1000 |
It is possible to search for an item ( inside the Editor ), case insensitive
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Editor var_Editor = (exgrid1.Columns.Add("DropDownList") as exontrol.EXGRIDLib.Column).Editor; var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.DropDownListType; var_Editor.AddItem(1,"One",null); var_Editor.AddItem(2,"Two",null); var_Editor.AddItem(3,"Three",null); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem(exgrid1.Columns[0].Editor.get_FindItem(">ONE")); var_Items.AddItem(exgrid1.Columns[0].Editor.get_FindItem(">ThRee")); var_Items.AddItem(exgrid1.Columns[0].Editor.get_FindItem("ONE")); var_Items.AddItem(exgrid1.Columns[0].Editor.get_FindItem(">tWo")); exgrid1.EndUpdate(); |
999 |
The text after the BR-tag is in same line as the text before the BR-tag (entire column)
exgrid1.BeginUpdate(); exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exHLines; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Default") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellSingleLine,false); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("This is the first line.<br>This is the second line."); var_Items.AddItem("This is the first line.<br>This is the second line."); var_Items.AddItem("This is the first line.<br>This is the second line."); exgrid1.EndUpdate(); |
998 |
The text after the BR-tag is in same line as the text before the BR-tag (individual)
exgrid1.BeginUpdate(); exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exHLines; exgrid1.Columns.Add("Default"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValueFormat(var_Items.AddItem("This is the first line.<br>This is the second line."),0,exontrol.EXGRIDLib.ValueFormatEnum.exHTML); int h = var_Items.AddItem("<b>This is the first line.<br>This is the second line.</b>"); var_Items.set_CellValueFormat(h,0,exontrol.EXGRIDLib.ValueFormatEnum.exHTML); var_Items.set_CellSingleLine(h,0,exontrol.EXGRIDLib.CellSingleLineEnum.exCaptionWordWrap); var_Items.set_CellValueFormat(var_Items.AddItem("This is the first line.<br>This is the second line."),0,exontrol.EXGRIDLib.ValueFormatEnum.exHTML); exgrid1.EndUpdate(); |
997 |
Can I disable an item once the user selects a new value into a different item
// Change event - Occurs when the user changes the cell's content. private void exgrid1_Change(object sender,int Item,int ColIndex,ref object NewValue) { exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_EnableItem(var_Items[1],false); } //this.exgrid1.Change += new exontrol.EXGRIDLib.exg2antt.ChangeEventHandler(this.exgrid1_Change); exgrid1.FreezeEvents(true); exgrid1.BeginUpdate(); exgrid1.ScrollBySingleLine = true; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exgrid1.Columns.Add("Q"); exgrid1.Columns.Add("A"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h1 = var_Items.AddItem("What's your gender?"); exontrol.EXGRIDLib.Editor var_Editor = var_Items.get_CellEditor(h1,1); var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.DropDownListType; var_Editor.AddItem(1,"Male",null); var_Editor.AddItem(0,"Female",null); var_Items.set_CellValue(h1,1,1); int h2 = var_Items.AddItem("What's pet name?"); var_Items.set_CellValue(h2,1,"This is my pet favorite long long long name, that shoul break the line in multiple pieces"); var_Items.set_CellSingleLine(h2,1,exontrol.EXGRIDLib.CellSingleLineEnum.exCaptionWordWrap); exgrid1.EndUpdate(); exgrid1.FreezeEvents(false); |
996 |
How can I get a row expanded / enlarged to fit the cell's text (entire column)
exgrid1.BeginUpdate(); exgrid1.ScrollBySingleLine = true; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exgrid1.Columns.Add("Q"); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("A") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellSingleLine,false); exontrol.EXGRIDLib.Editor var_Editor = var_Column.Editor; var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.MemoType; var_Editor.Appearance = exontrol.EXGRIDLib.InplaceAppearanceEnum.SingleApp; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h1 = var_Items.AddItem("What's name?"); var_Items.set_CellValue(h1,1,"This is my pet favorite long long long name, that shoul break the line in multiple pieces"); int h2 = var_Items.AddItem("What's your pet name?"); var_Items.set_CellValue(h2,1,"This is my pet favorite long long long name, that shoul break the line in multiple pieces"); exgrid1.EndUpdate(); |
995 |
How can I get a row expanded / enlarged to fit the cell's text (individual cell)
exgrid1.BeginUpdate(); exgrid1.ScrollBySingleLine = true; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exgrid1.Columns.Add("Q"); exgrid1.Columns.Add("A"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h1 = var_Items.AddItem("What's name?"); var_Items.set_CellValue(h1,1,"This is my pet favorite long long long name, that shoul break the line in multiple pieces"); int h2 = var_Items.AddItem("What's your pet name?"); exontrol.EXGRIDLib.Editor var_Editor = var_Items.get_CellEditor(h2,1); var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.MemoType; var_Editor.Appearance = exontrol.EXGRIDLib.InplaceAppearanceEnum.SingleApp; var_Items.set_CellValue(h2,1,"This is my pet favorite long long long name, that shoul break the line in multiple pieces"); var_Items.set_CellSingleLine(h2,1,exontrol.EXGRIDLib.CellSingleLineEnum.exCaptionWordWrap); exgrid1.EndUpdate(); |
994 |
InsertControlItem / UserEditor / A2X:
exgrid1.BeginUpdate(); exgrid1.BackColor = Color.FromArgb(240,240,240); exgrid1.ConditionalFormats.Add("1 = 1",null).Bold = true; (exgrid1.Columns.Add("Type") as exontrol.EXGRIDLib.Column).Alignment = exontrol.EXGRIDLib.AlignmentEnum.RightAlignment; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("1. A ProgID such as \"MSCAL.Calendar.7\""); var_Items.set_ItemDivider(h,0); int hX = var_Items.InsertControlItem(0,"MSCAL.Calendar",""); // Add 'Microsoft Calendar Control 2007(MSCAL.OCX)' reference to your project. (var_Items.get_ItemObject(hX) as MSACAL.Calendar).BackColor = Color.FromArgb(255,255,255); h = var_Items.AddItem("2. A CLSID such as \"{0036F83C-D892-4B7B-AA0B-BEDD8D16A738}\""); var_Items.set_ItemDivider(h,0); hX = var_Items.InsertControlItem(0,"{0036F83C-D892-4B7B-AA0B-BEDD8D16A738}",""); h = var_Items.AddItem("3. A URL such as \"http://www.exontrol.com\""); var_Items.set_ItemDivider(h,0); hX = var_Items.InsertControlItem(0,"http://www.exontrol.com",""); h = var_Items.AddItem("4. A reference to an Active document such as \"file://\\\\Documents\\MyDoc.doc\""); var_Items.set_ItemDivider(h,0); hX = var_Items.InsertControlItem(0,"file://C:\\empesting.xml",""); h = var_Items.AddItem("5.A fragment of HTML such as \"MSHTML:<HTML><BODY>This is a line of text</BODY></HTML>\""); var_Items.set_ItemDivider(h,0); hX = var_Items.InsertControlItem(0,"MSHTML:<HTML><BODY>This is a <b>line of</b> text</BODY></HTML>",""); var_Items.set_ItemHeight(hX,56); h = var_Items.AddItem("6.Anything, if it is preffixed by \"A2X:\""); var_Items.set_ItemDivider(h,0); hX = var_Items.InsertControlItem(0,"A2X:TOC24.Toc24Ctrl.1",""); exgrid1.EndUpdate(); |
993 |
How do I add a RichTextBox editor
// UserEditorOleEvent event - Occurs when an user editor fires an event. private void exgrid1_UserEditorOleEvent(object sender,object Obj,exontrol.EXGRIDLib.OleEvent Ev,ref bool CloseEditor,int Item,int ColIndex) { System.Diagnostics.Debug.Print( Ev.ToString() ); } //this.exgrid1.UserEditorOleEvent += new exontrol.EXGRIDLib.exg2antt.UserEditorOleEventEventHandler(this.exgrid1_UserEditorOleEvent); exgrid1.BeginUpdate(); exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exAllLines; exgrid1.DefaultItemHeight = 32; exontrol.EXGRIDLib.Editor var_Editor = (exgrid1.Columns.Add("RICHTEXT") as exontrol.EXGRIDLib.Column).Editor; var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.UserEditorType; var_Editor.UserEditor("RICHTEXT.RichtextCtrl",""); // Add 'Microsoft Rich Textbox Control 6.0 (SP4)(richtx32.ocx)' reference to your project. RichTextLib.RichTextBox var_RichTextBox = (var_Editor.UserEditorObject as RichTextLib.RichTextBox); var_RichTextBox.AutoVerbMenu = true; var_RichTextBox.TextRTF = "{\\rtf1\\ansi{\\fonttbl\\f0\\fswiss Helvetica;}\\f0\\pard\\r\\nThis is some {\\b bold} text.\\par\\r\\n}"; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("RICHTEXT.RichtextCtrl"); exgrid1.EndUpdate(); |
992 |
Is it possible to trap a double-click event on a specific cell and when that happens, to set the cell to a specific value
// DblClick event - Occurs when the user dblclk the left mouse button over an object. private void exgrid1_DblClick(object sender,short Shift,int X,int Y) { int h = exgrid1.get_ItemFromPoint(-1,-1,c,hit); System.Diagnostics.Debug.Print( exgrid1.Items.get_CellValue(h,c).ToString() ); } //this.exgrid1.DblClick += new exontrol.EXGRIDLib.exg2antt.DblClickEventHandler(this.exgrid1_DblClick); exgrid1.BeginUpdate(); exgrid1.HeaderAppearance = exontrol.EXGRIDLib.AppearanceEnum.Etched; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exgrid1.Columns.Add("C1"); exgrid1.Columns.Add("C2"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem("Item 1"),1,"Item 2"); var_Items.set_CellValue(var_Items.AddItem("Item 3"),1,"Item 4"); var_Items.set_CellValue(var_Items.AddItem("Item 5"),1,"Item 6"); exgrid1.EndUpdate(); |
991 |
How can I display dates in DD/MM/YYYY format
exgrid1.BeginUpdate(); exgrid1.ScrollBySingleLine = false; exgrid1.Columns.Add("Date"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_ItemDivider(var_Items.AddItem("Different Date Formats"),0); var_Items.set_FormatCell(var_Items.AddItem(Convert.ToDateTime("12/1/1971",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0,"((shortdateF(value) mid 4) left 2) + `/` + (shortdateF (value) left 2) + `/` + (shortdateF (value) right 4)"); var_Items.set_FormatCell(var_Items.AddItem(Convert.ToDateTime("12/1/1971",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0,"(1 array (0:=(shortdateF(value) split `/`))) + `/` + (0 array (=:0) ) + `/` + (2 array (=:0) )"); var_Items.set_FormatCell(var_Items.AddItem(Convert.ToDateTime("12/1/1971",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0,"((`0` + day(value) ) right 2) + `/` + ((`0` + month(value) ) right 2) + `/` + year(value)"); var_Items.set_FormatCell(var_Items.AddItem(Convert.ToDateTime("12/1/1971",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0,"day(value) + `/` + month(value) + `/` + year(value)"); var_Items.set_FormatCell(var_Items.AddItem(Convert.ToDateTime("12/1/1971",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0,"year(value) + ` - ` + day(value) + ` - ` + month(value)"); int h = var_Items.AddItem(Convert.ToDateTime("12/1/1971",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_ItemHeight(h,24); var_Items.set_CellValueFormat(h,0,exontrol.EXGRIDLib.ValueFormatEnum.exHTML); var_Items.set_FormatCell(h,0,"`<b>` + year(value) + `</b><off -4> ` + day(value) + ` - ` + month(value)"); var_Items.set_ItemDivider(var_Items.AddItem("Predefined Date Formats"),0); var_Items.set_FormatCell(var_Items.AddItem(Convert.ToDateTime("12/1/1971",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0,"value"); var_Items.set_FormatCell(var_Items.AddItem(Convert.ToDateTime("12/1/1971",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0,"shortdateF(value)"); var_Items.set_FormatCell(var_Items.AddItem(Convert.ToDateTime("12/1/1971",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0,"shortdate(value)"); var_Items.set_FormatCell(var_Items.AddItem(Convert.ToDateTime("12/1/1971",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),0,"longdate(value)"); exgrid1.EndUpdate(); |
990 |
I have noticed that the column gets resized once I release the mouse. I have a column that displays multiple-lines cells, and the text gets wrapped only when user releases the mouse. Is it possible to get resized contiguously as I had before
exgrid1.BeginUpdate(); exgrid1.ScrollBySingleLine = false; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exVLines; exgrid1.ColumnsAllowSizing = true; (exgrid1.Columns.Add("Column A (cont)") as exontrol.EXGRIDLib.Column).set_Def(exontrol.EXGRIDLib.DefColumnEnum.exColumnResizeContiguously,true); exgrid1.Columns.Add("Column 1"); (exgrid1.Columns.Add("Column B (cont)") as exontrol.EXGRIDLib.Column).set_Def(exontrol.EXGRIDLib.DefColumnEnum.exColumnResizeContiguously,true); exgrid1.Columns.Add("Column 2"); exgrid1.EndUpdate(); |
989 |
How do I get the column from cursor, when it hovers the empty portion of the items section
// MouseMove event - Occurs when the user moves the mouse. private void exgrid1_MouseMoveEvent(object sender,short Button,short Shift,int X,int Y) { int i = exgrid1.get_ItemFromPoint(0,-1,c,hit); System.Diagnostics.Debug.Print( "Column" ); System.Diagnostics.Debug.Print( c.ToString() ); } //this.exgrid1.MouseMoveEvent += new exontrol.EXGRIDLib.exg2antt.MouseMoveEventHandler(this.exgrid1_MouseMoveEvent); exgrid1.BeginUpdate(); exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exVLines; exgrid1.Columns.Add("Column 0"); exgrid1.Columns.Add("Column 1"); exgrid1.Columns.Add("Column 2"); exgrid1.EndUpdate(); |
988 |
How do I add items once the user clicks the empty area
// Click event - Occurs when the user presses and then releases the left mouse button over the grid control. private void exgrid1_Click(object sender) { int i = exgrid1.get_ItemFromPoint(0,-1,c,hit); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem(i),1,c); } //this.exgrid1.Click += new exontrol.EXGRIDLib.exg2antt.ClickEventHandler(this.exgrid1_Click); exgrid1.BeginUpdate(); exgrid1.Columns.Add("Number of Items to Add"); exgrid1.Columns.Add("Click on Column"); exgrid1.EndUpdate(); |
987 |
Is there any option to stop events
// AddItem event - Occurs after a new Item has been inserted to Items collection. private void exgrid1_AddItem(object sender,int Item) { System.Diagnostics.Debug.Print( "AddItem event is fired only if FreezeEvents(False) is called" ); } //this.exgrid1.AddItem += new exontrol.EXGRIDLib.exg2antt.AddItemEventHandler(this.exgrid1_AddItem); exgrid1.FreezeEvents(true); exgrid1.BeginUpdate(); exgrid1.DefaultItemHeight = 24; exgrid1.Columns.Add("Task"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h1 = var_Items.AddItem("Task 1"); int h2 = var_Items.AddItem("Task 2"); exgrid1.EndUpdate(); exgrid1.FreezeEvents(false); |
986 |
How can I include the child items, when a filter is applied
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = true; exgrid1.ContinueColumnScroll = false; exgrid1.MarkSearchColumn = false; exgrid1.SearchColumnIndex = 1; exgrid1.Indent = 16; exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exgrid1.FilterBarPromptVisible = exontrol.EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible; exgrid1.FilterBarPromptPattern = "Nancy"; exgrid1.FilterInclude = exontrol.EXGRIDLib.FilterIncludeEnum.exItemsWithChilds; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; (var_Columns.Add("Name") as exontrol.EXGRIDLib.Column).Width = 96; (var_Columns.Add("Title") as exontrol.EXGRIDLib.Column).Width = 96; var_Columns.Add("City"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h0 = var_Items.AddItem("Nancy Davolio"); var_Items.set_CellValue(h0,1,"Sales Representative"); var_Items.set_CellValue(h0,2,"Seattle"); h0 = var_Items.InsertItem(h0,null,"Andrew Fuller"); var_Items.set_CellValue(h0,1,"Vice President, Sales"); var_Items.set_CellValue(h0,2,"Tacoma"); h0 = var_Items.InsertItem(h0,null,"Michael Suyama"); var_Items.set_CellValue(h0,1,"Sales Representative"); var_Items.set_CellValue(h0,2,"London"); h0 = var_Items.AddItem("Janet Leverling"); var_Items.set_CellValue(h0,1,"Sales Representative"); var_Items.set_CellValue(h0,2,"Kirkland"); h0 = var_Items.InsertItem(h0,null,"Margaret Peacock"); var_Items.set_CellValue(h0,1,"Sales Representative"); var_Items.set_CellValue(h0,2,"Redmond"); var_Items.set_ExpandItem(0,true); exgrid1.ApplyFilter(); exgrid1.EndUpdate(); |
985 |
How do I prevent changing the cell's state ( check-box state )
|
984 |
How do I get sorted the column as string, numeric, date, date and time. Also how can it be applied to drop down filter panel
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Date") as exontrol.EXGRIDLib.Column); var_Column.SortType = exontrol.EXGRIDLib.SortTypeEnum.SortDate; var_Column.DisplayFilterButton = true; var_Column.DisplayFilterPattern = false; var_Column.DisplayFilterDate = true; var_Column.FilterList = exontrol.EXGRIDLib.FilterListEnum.exShowFocusItem | exontrol.EXGRIDLib.FilterListEnum.exShowCheckBox | exontrol.EXGRIDLib.FilterListEnum.exSortItemsDesc; exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("DateTime") as exontrol.EXGRIDLib.Column); var_Column1.SortType = exontrol.EXGRIDLib.SortTypeEnum.SortDateTime; var_Column1.DisplayFilterButton = true; var_Column1.DisplayFilterPattern = false; var_Column1.FilterList = exontrol.EXGRIDLib.FilterListEnum.exShowFocusItem | exontrol.EXGRIDLib.FilterListEnum.exShowCheckBox | exontrol.EXGRIDLib.FilterListEnum.exSortItemsDesc; exontrol.EXGRIDLib.Column var_Column2 = (exgrid1.Columns.Add("Time") as exontrol.EXGRIDLib.Column); var_Column2.SortType = exontrol.EXGRIDLib.SortTypeEnum.SortTime; var_Column2.DisplayFilterButton = true; var_Column2.DisplayFilterPattern = false; var_Column2.FilterList = exontrol.EXGRIDLib.FilterListEnum.exShowFocusItem | exontrol.EXGRIDLib.FilterListEnum.exShowCheckBox | exontrol.EXGRIDLib.FilterListEnum.exSortItemsDesc; var_Column2.FormatColumn = "time(value)"; exontrol.EXGRIDLib.Column var_Column3 = (exgrid1.Columns.Add("Numeric") as exontrol.EXGRIDLib.Column); var_Column3.SortType = exontrol.EXGRIDLib.SortTypeEnum.SortNumeric; var_Column3.DisplayFilterButton = true; var_Column3.FilterList = exontrol.EXGRIDLib.FilterListEnum.exShowFocusItem | exontrol.EXGRIDLib.FilterListEnum.exShowCheckBox | exontrol.EXGRIDLib.FilterListEnum.exSortItemsDesc; exontrol.EXGRIDLib.Column var_Column4 = (exgrid1.Columns.Add("String") as exontrol.EXGRIDLib.Column); var_Column4.DisplayFilterButton = true; var_Column4.FilterList = exontrol.EXGRIDLib.FilterListEnum.exShowFocusItem | exontrol.EXGRIDLib.FilterListEnum.exShowCheckBox | exontrol.EXGRIDLib.FilterListEnum.exSortItemsDesc; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem(Convert.ToDateTime("1/27/2010",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,1,Convert.ToDateTime("1/27/2010 10:00:00",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,2,var_Items.get_CellValue(h,1)); var_Items.set_CellValue(h,3,1); var_Items.set_CellValue(h,4,var_Items.get_CellValue(h,3)); h = var_Items.AddItem(Convert.ToDateTime("1/27/2011",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,1,Convert.ToDateTime("1/27/2011 9:00:00",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,2,var_Items.get_CellValue(h,1)); var_Items.set_CellValue(h,3,11); var_Items.set_CellValue(h,4,var_Items.get_CellValue(h,3)); h = var_Items.AddItem(Convert.ToDateTime("11/2/2010",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,1,Convert.ToDateTime("11/2/2010 9:00:00",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,2,var_Items.get_CellValue(h,1)); var_Items.set_CellValue(h,3,2); var_Items.set_CellValue(h,4,var_Items.get_CellValue(h,3)); exgrid1.Columns["DateTime"].DisplayFilterDate = false; exgrid1.EndUpdate(); |
983 |
I am using Layout property to sort multiple columns at once. The problem is that all items get expanded. How do I prevent that
exgrid1.BeginUpdate(); exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("P1") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true); var_Column.PartialCheck = true; exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("P2") as exontrol.EXGRIDLib.Column); var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true); var_Column1.PartialCheck = true; var_Column1.FormatColumn = "1 index ``"; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Root"); var_Items.InsertItem(h,null,"Child A"); var_Items.InsertItem(h,null,"Child B"); var_Items.InsertItem(h,null,"Child A"); var_Items.InsertItem(h,null,"Child B"); var_Items.AddItem("Root"); var_Items.AddItem("Root"); exgrid1.SingleSort = false; exgrid1.Layout = "multiplesort=\"C0:1 C1:2\";collapse=\"\""; exgrid1.EndUpdate(); |
982 |
How do I find the cell's type, or what the cell holds
exgrid1.BeginUpdate(); exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; (var_Columns.Add("Value") as exontrol.EXGRIDLib.Column).Width = 24; (var_Columns.Add("Type") as exontrol.EXGRIDLib.Column).FormatColumn = "type(%0)"; (var_Columns.Add("TypeAsString") as exontrol.EXGRIDLib.Column).FormatColumn = "(0 := type(%0)) array (`empty`, `null`, `short`, `long`, `float`, `double`, `currency`, `date`, `string`, `object`, `error`, `b" + "oolean`, `variant`, `any`, `reserved`, `decimal`, `char`, `byte`, `unsigned short`, `unsigned long`, `long on 64 bits`)"; (var_Columns.Add("Length") as exontrol.EXGRIDLib.Column).FormatColumn = "len(%0)"; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem(null); var_Items.AddItem(""); var_Items.set_CellValue(.AddItem(null),0,(exgrid1 as exontrol.EXGRIDLib.exgrid)); var_Items.set_CellValue(var_Items.AddItem(null),0,true); var_Items.set_CellValue(var_Items.AddItem(null),0,-1); var_Items.set_CellValue(var_Items.AddItem(null),0,-1); var_Items.set_CellValue(var_Items.AddItem(null),0,Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); exgrid1.EndUpdate(); |
981 |
How can I get ride / hide the image being dragged by OLE Drag and Drop
// OLEStartDrag event is not supported. Use the DragEnter,DragLeave,DragOver, DragDrop ... events. exgrid1.OLEDropMode = exontrol.EXGRIDLib.exOLEDropModeEnum.exOLEDropManual; exgrid1.set_Background(exontrol.EXGRIDLib.BackgroundPartEnum.exDragDropAfter,Color.FromArgb(255,255,255)); exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exgrid1.Columns.Add("Default"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Root"); var_Items.InsertItem(h,null,"Child 1"); var_Items.InsertItem(h,null,"Child 2"); var_Items.set_ExpandItem(h,true); |
980 |
The ReadOnly property does not prevent changing the column's check-box (sample 2)
exgrid1.BeginUpdate(); exgrid1.ShowFocusRect = false; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("C1") as exontrol.EXGRIDLib.Column); var_Column.AllowSizing = false; var_Column.Width = 18; var_Column.Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.CheckValueType; exgrid1.Columns.Add("C2"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem(0),1,"Item 1"); var_Items.set_CellValue(var_Items.AddItem(-1),1,"Item 2"); var_Items.set_CellValue(var_Items.AddItem(0),1,"Item 3"); exgrid1.ReadOnly = exontrol.EXGRIDLib.ReadOnlyEnum.exReadOnly; exgrid1.Columns[0].Editor.set_Option(exontrol.EXGRIDLib.EditorOptionEnum.exCheckValue2,2); exgrid1.EndUpdate(); |
979 |
The ReadOnly property does not prevent changing the column's check-box (sample 1)
exgrid1.BeginUpdate(); exgrid1.ShowFocusRect = false; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("C1") as exontrol.EXGRIDLib.Column); var_Column.AllowSizing = false; var_Column.Width = 18; exontrol.EXGRIDLib.Editor var_Editor = var_Column.Editor; var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.CheckValueType; var_Editor.set_Option(exontrol.EXGRIDLib.EditorOptionEnum.exCheckValue2,1); exgrid1.Columns.Add("C2"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem(0),1,"Item 1"); var_Items.set_CellValue(var_Items.AddItem(-1),1,"Item 2"); var_Items.set_CellValue(var_Items.AddItem(0),1,"Item 3"); exgrid1.ReadOnly = exontrol.EXGRIDLib.ReadOnlyEnum.exReadOnly; exgrid1.EndUpdate(); |
978 |
How can I export checked items only
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; (var_Columns.Add("C1") as exontrol.EXGRIDLib.Column).set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true); (var_Columns.Add("C2") as exontrol.EXGRIDLib.Column).FormatColumn = "1 index `A-Z`"; (var_Columns.Add("C3") as exontrol.EXGRIDLib.Column).FormatColumn = "100 index ``"; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("Item 1"); var_Items.set_CellState(var_Items.AddItem("Item 2"),null,1); var_Items.set_CellState(var_Items.AddItem("Item 3"),null,1); exgrid1.EndUpdate(); System.Diagnostics.Debug.Print( "Export CSV Checked Items Only:" ); System.Diagnostics.Debug.Print( exgrid1.Export("","chk").ToString() ); |
977 |
How can I export a hidden column
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; var_Columns.Add("C1"); exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("C2") as exontrol.EXGRIDLib.Column); var_Column.FormatColumn = "1 index `A-Z`"; var_Column.Visible = false; exontrol.EXGRIDLib.Column var_Column1 = (var_Columns.Add("C3") as exontrol.EXGRIDLib.Column); var_Column1.FormatColumn = "100 index ``"; var_Column1.Visible = false; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("Item 1"); var_Items.AddItem("Item 2"); var_Items.AddItem("Item 3"); exgrid1.EndUpdate(); System.Diagnostics.Debug.Print( "Export CSV Hidden Columns (1,2):" ); System.Diagnostics.Debug.Print( exgrid1.Export("","|1,2").ToString() ); |
976 |
I'm trying to use automatic numbering of the outline. How can I have A, B, C for root items, 1, 2, 3 for the sub-items, and a, b, c for sub-sub-items (sample 3)
exgrid1.BeginUpdate(); exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exgrid1.AutoDrag = exontrol.EXGRIDLib.AutoDragEnum.exAutoDragPositionAny; exgrid1.HasLines = exontrol.EXGRIDLib.HierarchyLineEnum.exSolidLine; exgrid1.Indent = 16; exgrid1.MarkSearchColumn = false; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); var_Column.FormatColumn = "((1:=(0 :=(1 rpos '.|A-Z||a-z|')) rfind `.`) < 0 ? `<b>` + =:0 + `` : (=:0 mid (1 + 1 + =:1) ) + `)` ) + ` ` + value"; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Root"); var_Items.InsertItem(h,null,"Child"); int hChild = var_Items.InsertItem(h,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(h,null,"Child"); var_Items.set_ExpandItem(0,true); h = var_Items.AddItem("Root"); var_Items.InsertItem(h,null,"Child"); hChild = var_Items.InsertItem(h,null,"Child"); var_Items.set_CellState(hChild,0,1); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(h,null,"Child"); exgrid1.EndUpdate(); |
975 |
I'm trying to use automatic numbering of the outline. How can I have A, B, C for root items, 1, 2, 3 for the sub-items, and a, b, c for sub-sub-items (sample 2)
exgrid1.BeginUpdate(); exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exgrid1.GridLineColor = Color.FromArgb(190,190,190); exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exgrid1.AutoDrag = exontrol.EXGRIDLib.AutoDragEnum.exAutoDragPositionAny; exgrid1.HasLines = exontrol.EXGRIDLib.HierarchyLineEnum.exSolidLine; exgrid1.Indent = 16; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; var_Columns.Add("Default"); exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellPaddingRight,4); var_Column.AllowSizing = false; var_Column.Width = 36; var_Column.Position = 0; var_Column.FormatColumn = "(1:=(0 :=(1 rpos '.|A-Z||a-z|')) rfind `.`) < 0 ? `<b>` + =:0 : (`............` left 2 * (=:0 count `.`)) + (=:0 mid (1 + 1 + =" + ":1) ) "; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Root"); var_Items.InsertItem(h,null,"Child"); int hChild = var_Items.InsertItem(h,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(h,null,"Child"); var_Items.set_ExpandItem(0,true); h = var_Items.AddItem("Root"); var_Items.InsertItem(h,null,"Child"); hChild = var_Items.InsertItem(h,null,"Child"); var_Items.set_CellState(hChild,0,1); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(h,null,"Child"); exgrid1.EndUpdate(); |
974 |
I'm trying to use automatic numbering of the outline. How can I have A, B, C for root items, 1, 2, 3 for the sub-items, and a, b, c for sub-sub-items (sample 1)
exgrid1.BeginUpdate(); exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exgrid1.AutoDrag = exontrol.EXGRIDLib.AutoDragEnum.exAutoDragPositionAny; exgrid1.HasLines = exontrol.EXGRIDLib.HierarchyLineEnum.exSolidLine; exgrid1.Indent = 16; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; var_Columns.Add("Default"); exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellPaddingRight,4); var_Column.Alignment = exontrol.EXGRIDLib.AlignmentEnum.RightAlignment; var_Column.AllowSizing = false; var_Column.Width = 24; var_Column.Position = 0; var_Column.FormatColumn = "(1:=(0 :=(1 rpos '.|A-Z||a-z|')) rfind `.`) < 0 ? `<b>` + =:0 : `<i>` + (=:0 mid (1 + 1 + =:1) ) "; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Root"); var_Items.InsertItem(h,null,"Child"); int hChild = var_Items.InsertItem(h,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(h,null,"Child"); var_Items.set_ExpandItem(0,true); h = var_Items.AddItem("Root"); var_Items.InsertItem(h,null,"Child"); hChild = var_Items.InsertItem(h,null,"Child"); var_Items.set_CellState(hChild,0,1); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(hChild,null,"Child"); var_Items.InsertItem(h,null,"Child"); exgrid1.EndUpdate(); |
973 |
How can I programmatically group by columns, without having the control's sort bar visible
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.SortBarHeight = 0; exgrid1.SortBarVisible = true; exgrid1.SortBarCaption = "Drag a <b>column</b> header here to group by that column."; exgrid1.AllowGroupBy = true; exgrid1.Layout = "multiplesort=\"C1:2\""; exgrid1.EndUpdate(); |
972 |
How do I perform my own sort
// Sort event - Fired when the control sorts a column. private void exgrid1_Sort(object sender) { System.Diagnostics.Debug.Print( "Sort" ); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_ItemPosition(var_Items[1],0); var_Items.set_ItemPosition(var_Items[0],1); } //this.exgrid1.Sort += new exontrol.EXGRIDLib.exg2antt.SortEventHandler(this.exgrid1_Sort); exgrid1.BeginUpdate(); exgrid1.SingleSort = false; exgrid1.SortOnClick = exontrol.EXGRIDLib.SortOnClickEnum.exUserSort; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; (var_Columns.Add("Index") as exontrol.EXGRIDLib.Column).FormatColumn = "0 index ``"; var_Columns.Add("Data 1"); var_Columns.Add("Data 2"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem(0); var_Items.set_CellValue(h,1,2); var_Items.set_CellValue(h,2,3); h = var_Items.AddItem(4); var_Items.set_CellValue(h,1,5); var_Items.set_CellValue(h,2,6); h = var_Items.AddItem(7); var_Items.set_CellValue(h,1,8); var_Items.set_CellValue(h,2,9); exgrid1.Layout = "multiplesort=\"C1:1 C2:2\""; exgrid1.EndUpdate(); |
971 |
Is it possible to have a different alignment for parts of the cell's caption
exgrid1.BeginUpdate(); exgrid1.TreeColumnIndex = -1; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Default") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellHAlignment(var_Items.AddItem("all-left"),0,exontrol.EXGRIDLib.AlignmentEnum.LeftAlignment); var_Items.set_CellHAlignment(var_Items.AddItem("all-center"),0,exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment); var_Items.set_CellHAlignment(var_Items.AddItem("all-right"),0,exontrol.EXGRIDLib.AlignmentEnum.RightAlignment); int h = var_Items.AddItem("left<c>center<r>right"); var_Items.set_CellValueFormat(h,0,exontrol.EXGRIDLib.ValueFormatEnum.exHTML); exgrid1.EndUpdate(); |
970 |
I have a column with Def(exCellSingleLine) property on False, word-wrapping, and I am wondering if possible to update the column's content while user is resizing it
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("MultipleLine") as exontrol.EXGRIDLib.Column); var_Column.Width = 32; var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellSingleLine,false); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exColumnResizeContiguously,true); exontrol.EXGRIDLib.Column var_Column1 = (var_Columns.Add("SingleLine") as exontrol.EXGRIDLib.Column); var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellSingleLine,false); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem("This is a bit of long text that should break the line"),1,"This is a bit of long text that should break the line"); exgrid1.EndUpdate(); |
969 |
How can I get the absolute position of an item
// MouseMove event - Occurs when the user moves the mouse. private void exgrid1_MouseMoveEvent(object sender,short Button,short Shift,int X,int Y) { exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; System.Diagnostics.Debug.Print( var_Items.get_CellCaption(exgrid1.get_ItemFromPoint(-1,-1,c,hit),"Position") ); } //this.exgrid1.MouseMoveEvent += new exontrol.EXGRIDLib.exg2antt.MouseMoveEventHandler(this.exgrid1_MouseMoveEvent); exgrid1.BeginUpdate(); exgrid1.BackColorAlternate = Color.FromArgb(240,240,240); exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; (exgrid1.Columns.Add("Def") as exontrol.EXGRIDLib.Column).DisplayFilterButton = true; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Root"); var_Items.InsertItem(var_Items.InsertItem(h,null,"Child 1"),null,"Sub-Child 1"); var_Items.InsertItem(var_Items.InsertItem(h,null,"Child 2"),null,"Sub-Child 2"); exgrid1.PutItems(exgrid1.GetItems(-1),null); exgrid1.PutItems(exgrid1.GetItems(-1),null); exgrid1.PutItems(exgrid1.GetItems(-1),null); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column); var_Column.FormatColumn = "1 apos ``"; var_Column.Visible = false; exgrid1.EndUpdate(); |
968 |
I am using ExComboBox as an user editor, how can I display a different column
// UserEditorClose event - Fired the user editor is about to be opened. private void exgrid1_UserEditorClose(object sender,object Obj,int Item,int ColIndex) { // Items.CellValue(Item,ColIndex) = Object.Value } //this.exgrid1.UserEditorClose += new exontrol.EXGRIDLib.exg2antt.UserEditorCloseEventHandler(this.exgrid1_UserEditorClose); // UserEditorOleEvent event - Occurs when an user editor fires an event. private void exgrid1_UserEditorOleEvent(object sender,object Obj,exontrol.EXGRIDLib.OleEvent Ev,ref bool CloseEditor,int Item,int ColIndex) { System.Diagnostics.Debug.Print( Ev.ToString() ); } //this.exgrid1.UserEditorOleEvent += new exontrol.EXGRIDLib.exg2antt.UserEditorOleEventEventHandler(this.exgrid1_UserEditorOleEvent); // UserEditorOpen event - Occurs when an user editor is about to be opened. private void exgrid1_UserEditorOpen(object sender,object Obj,int Item,int ColIndex) { // Object.Value = Me.Items.CellValue(Item,ColIndex) } //this.exgrid1.UserEditorOpen += new exontrol.EXGRIDLib.exg2antt.UserEditorOpenEventHandler(this.exgrid1_UserEditorOpen); exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Editor var_Editor = (exgrid1.Columns.Add("Exontrol.ComboBox") as exontrol.EXGRIDLib.Column).Editor; var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.UserEditorType; var_Editor.UserEditor("Exontrol.ComboBox",""); Object var_Object = var_Editor.UserEditorObject; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exgrid1.DefaultItemHeight = 21; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellEditorVisible(var_Items.AddItem(10248),0,exontrol.EXGRIDLib.EditorVisibleEnum.exEditorVisible); var_Items.set_CellEditorVisible(var_Items.AddItem(10249),0,exontrol.EXGRIDLib.EditorVisibleEnum.exEditorVisible); var_Items.set_CellEditorVisible(var_Items.AddItem(10250),0,exontrol.EXGRIDLib.EditorVisibleEnum.exEditorVisible); exgrid1.EndUpdate(); |
967 |
How do I sort the index column as numeric (Method 3)
// AddItem event - Occurs after a new Item has been inserted to Items collection. private void exgrid1_AddItem(object sender,int Item) { exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellData(Item,1,var_Items.get_CellCaption(Item,1)); } //this.exgrid1.AddItem += new exontrol.EXGRIDLib.exg2antt.AddItemEventHandler(this.exgrid1_AddItem); exgrid1.BeginUpdate(); exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exAllLines; exgrid1.ColumnAutoResize = true; exgrid1.ShowFocusRect = false; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Next") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellPaddingLeft,4); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exHeaderPaddingLeft,4); exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("Index") as exontrol.EXGRIDLib.Column); var_Column1.AllowSizing = false; var_Column1.Width = 48; var_Column1.FormatColumn = "(((0 := (1 index ``)) mod 3) case ( default: ``; 0 : `<r><fgcolor=B0B0B0>`; 1: ``; 2 : `<c><fgcolor=808080>` )) + str(=:0)"; var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); var_Column1.SortType = exontrol.EXGRIDLib.SortTypeEnum.SortUserData; var_Column1.Position = 0; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("Item 1"); var_Items.AddItem("Item 2"); var_Items.AddItem("Item 3"); var_Items.AddItem("Item 4"); var_Items.AddItem("Item 5"); var_Items.AddItem("Item 6"); var_Items.AddItem("Item 7"); var_Items.AddItem("Item 8"); var_Items.AddItem("Item 9"); var_Items.AddItem("Item 10"); exgrid1.EndUpdate(); |
966 |
How do I sort the index column as numeric (Method 2)
// AddItem event - Occurs after a new Item has been inserted to Items collection. private void exgrid1_AddItem(object sender,int Item) { exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellSortData(Item,1,var_Items.get_CellCaption(Item,1)); } //this.exgrid1.AddItem += new exontrol.EXGRIDLib.exg2antt.AddItemEventHandler(this.exgrid1_AddItem); exgrid1.BeginUpdate(); exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exAllLines; exgrid1.ColumnAutoResize = true; exgrid1.ShowFocusRect = false; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Next") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellPaddingLeft,4); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exHeaderPaddingLeft,4); exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("Index") as exontrol.EXGRIDLib.Column); var_Column1.AllowSizing = false; var_Column1.Width = 48; var_Column1.FormatColumn = "(((0 := (1 index ``)) mod 3) case ( default: ``; 0 : `<r><fgcolor=B0B0B0>`; 1: ``; 2 : `<c><fgcolor=808080>` )) + str(=:0)"; var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); var_Column1.SortType = exontrol.EXGRIDLib.SortTypeEnum.SortCellData; var_Column1.Position = 0; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("Item 1"); var_Items.AddItem("Item 2"); var_Items.AddItem("Item 3"); var_Items.AddItem("Item 4"); var_Items.AddItem("Item 5"); var_Items.AddItem("Item 6"); var_Items.AddItem("Item 7"); var_Items.AddItem("Item 8"); var_Items.AddItem("Item 9"); var_Items.AddItem("Item 10"); exgrid1.EndUpdate(); |
965 |
How do I sort the index column as numeric (Method 1)
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Sort Index As String (Default)") as exontrol.EXGRIDLib.Column); var_Column.FormatColumn = "1 index ``"; exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("Sort Index As Numeric") as exontrol.EXGRIDLib.Column); var_Column1.ComputedField = "%C0"; var_Column1.SortType = exontrol.EXGRIDLib.SortTypeEnum.SortNumeric; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); exgrid1.EndUpdate(); |
964 |
How can I put icons/images into buttons
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = true; exgrid1.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTq" + "lVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m" + "0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" + "NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("C+B") as exontrol.EXGRIDLib.Column); var_Column.AllowSizing = false; var_Column.Width = 48; var_Column.FormatColumn = "` <img>` + ( 1 + (1 index ``) mod 3 ) + `</img> `"; var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasButton,true); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellButtonAutoWidth,true); exgrid1.Columns.Add(""); exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exVLines; exgrid1.DefaultItemHeight = 20; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); exgrid1.EndUpdate(); |
963 |
Is it possible to have a CheckBox and Button TOGETHER on all cells in a column
// ButtonClick event - Occurs when user clicks on the cell's button. private void exgrid1_ButtonClick(object sender,int Item,int ColIndex,object Key) { System.Diagnostics.Debug.Print( "ButtonClick" ); System.Diagnostics.Debug.Print( Item.ToString() ); System.Diagnostics.Debug.Print( Key.ToString() ); } //this.exgrid1.ButtonClick += new exontrol.EXGRIDLib.exg2antt.ButtonClickEventHandler(this.exgrid1_ButtonClick); // CellStateChanged event - Fired after cell's state has been changed. private void exgrid1_CellStateChanged(object sender,int Item,int ColIndex) { System.Diagnostics.Debug.Print( "CellStateChanged" ); System.Diagnostics.Debug.Print( Item.ToString() ); } //this.exgrid1.CellStateChanged += new exontrol.EXGRIDLib.exg2antt.CellStateChangedEventHandler(this.exgrid1_CellStateChanged); exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = true; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("") as exontrol.EXGRIDLib.Column); var_Column.AllowSizing = false; var_Column.Width = 32; var_Column.FormatColumn = "1 index ``"; exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("Def") as exontrol.EXGRIDLib.Column); var_Column1.AllowSizing = false; var_Column1.Width = 48; var_Column1.FormatColumn = "` `"; var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true); var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasButton,true); var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellButtonAutoWidth,true); exgrid1.Columns.Add(""); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); exgrid1.EndUpdate(); |
962 |
I have columns that look up the same data. (e.g. different contact) so both could / should use the same editor. Is this possible, to use other column's editor
exgrid1.BeginUpdate(); exgrid1.SelBackColor = exgrid1.BackColor; exgrid1.SelForeColor = exgrid1.ForeColor; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("Pos") as exontrol.EXGRIDLib.Column); var_Column.Width = 32; var_Column.AllowSizing = false; var_Column.FormatColumn = "1 index ``"; exontrol.EXGRIDLib.Editor var_Editor = var_Columns.Add("C1").Editor; var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.ColorListType; var_Editor.ClearItems(); var_Editor.AddItem(255,"Red Color",null); var_Editor.AddItem(16711680,"Blue Color",null); var_Editor.AddItem(65280,"Green Color",null); (var_Columns.Add("C2") as exontrol.EXGRIDLib.Column).Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.CloneType | exontrol.EXGRIDLib.EditTypeEnum.EditType; (var_Columns.Add("C3") as exontrol.EXGRIDLib.Column).Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.CloneType | exontrol.EXGRIDLib.EditTypeEnum.EditType; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem(""); var_Items.set_CellValue(h,1,16711680); var_Items.set_CellValue(h,2,65280); var_Items.set_CellValue(h,3,255); h = var_Items.AddItem(""); var_Items.set_CellValue(h,1,255); var_Items.set_CellValue(h,2,16711680); var_Items.set_CellValue(h,3,65280); exgrid1.EndUpdate(); |
961 |
Is there an easy way to get an effect like in a Microsoft Access / SQL-Server Table view, where you can scroll-up till the last row containing data is displayed as top-row
|
960 |
Does filtering work with umlauts / accents characters
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Names") as exontrol.EXGRIDLib.Column); var_Column.DisplayFilterButton = true; var_Column.FilterType = exontrol.EXGRIDLib.FilterTypeEnum.exPattern; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("Mantel"); var_Items.AddItem("Mechanik"); var_Items.AddItem("Motor"); var_Items.AddItem("Murks"); var_Items.AddItem("Märchen"); var_Items.AddItem("Möhren"); var_Items.AddItem("Mühle"); var_Items.AddItem("Sérigraphie"); exgrid1.Columns[0].Filter = "*ä*"; exgrid1.ApplyFilter(); exgrid1.EndUpdate(); |
959 |
How FullPath method works
exgrid1.BeginUpdate(); exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exgrid1.Columns.Add("C1"); exgrid1.Columns.Add("C2"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Root"); var_Items.set_CellValue(h,1,"A"); var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 1"),1,"B"); var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 2"),1,"C"); var_Items.set_ExpandItem(h,true); exgrid1.SearchColumnIndex = 1; System.Diagnostics.Debug.Print( exgrid1.SearchColumnIndex.ToString() ); System.Diagnostics.Debug.Print( exgrid1.Items.get_FullPath([2]) ); exgrid1.SearchColumnIndex = 0; System.Diagnostics.Debug.Print( exgrid1.SearchColumnIndex.ToString() ); System.Diagnostics.Debug.Print( exgrid1.Items.get_FullPath([2]) ); exgrid1.EndUpdate(); |
958 |
Can I set the search box / filterbarprompt to invisible, so I can use my own input and *string* via VBA
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = true; exgrid1.ContinueColumnScroll = false; exgrid1.MarkSearchColumn = false; exgrid1.SearchColumnIndex = 1; exgrid1.FilterBarHeight = 0; exgrid1.FilterBarPromptVisible = exontrol.EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; (var_Columns.Add("Name") as exontrol.EXGRIDLib.Column).Width = 96; (var_Columns.Add("Title") as exontrol.EXGRIDLib.Column).Width = 96; var_Columns.Add("City"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h0 = var_Items.AddItem("Nancy Davolio"); var_Items.set_CellValue(h0,1,"Sales Representative"); var_Items.set_CellValue(h0,2,"Seattle"); h0 = var_Items.AddItem("Andrew Fuller"); var_Items.set_CellValue(h0,1,"Vice President, Sales"); var_Items.set_CellValue(h0,2,"Tacoma"); var_Items.set_SelectItem(h0,true); h0 = var_Items.AddItem("Janet Leverling"); var_Items.set_CellValue(h0,1,"Sales Representative"); var_Items.set_CellValue(h0,2,"Kirkland"); h0 = var_Items.AddItem("Margaret Peacock"); var_Items.set_CellValue(h0,1,"Sales Representative"); var_Items.set_CellValue(h0,2,"Redmond"); h0 = var_Items.AddItem("Steven Buchanan"); var_Items.set_CellValue(h0,1,"Sales Manager"); var_Items.set_CellValue(h0,2,"London"); h0 = var_Items.AddItem("Michael Suyama"); var_Items.set_CellValue(h0,1,"Sales Representative"); var_Items.set_CellValue(h0,2,"London"); h0 = var_Items.AddItem("Robert King"); var_Items.set_CellValue(h0,1,"Sales Representative"); var_Items.set_CellValue(h0,2,"London"); h0 = var_Items.AddItem("Laura Callahan"); var_Items.set_CellValue(h0,1,"Inside Sales Coordinator"); var_Items.set_CellValue(h0,2,"Seattle"); h0 = var_Items.AddItem("Anne Dodsworth"); var_Items.set_CellValue(h0,1,"Sales Representative"); var_Items.set_CellValue(h0,2,"London"); exgrid1.FilterBarPromptPattern = "London"; exgrid1.EndUpdate(); |
957 |
How to load a hierarchy using the control's DataSource property (Parent-ID-Relation)
// AddItem event - Occurs after a new Item has been inserted to Items collection. private void exgrid1_AddItem(object sender,int Item) { exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.SetParent(Item,var_Items.get_FindItem(var_Items.get_CellValue(Item,"ReportsTo"),"EmployeeID",null)); } //this.exgrid1.AddItem += new exontrol.EXGRIDLib.exg2antt.AddItemEventHandler(this.exgrid1_AddItem); exgrid1.BeginUpdate(); exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exgrid1.ColumnAutoResize = false; exgrid1.ContinueColumnScroll = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("SELECT * FROM Employees ORDER BY ReportsTo","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.Items.set_ExpandItem(0,true); exgrid1.EndUpdate(); |
956 |
Is it possible to select the entire row/line, when user clicks the first column, and select individually the rest of cells, while user clicks any other column
// MouseDown event - Occurs when the user presses a mouse button. private void exgrid1_MouseDownEvent(object sender,short Button,short Shift,int X,int Y) { int i = exgrid1.get_ItemFromPoint(-1,-1,c,hit); exgrid1.FullRowSelect = exgrid1.Columns[c].Data; } //this.exgrid1.MouseDownEvent += new exontrol.EXGRIDLib.exg2antt.MouseDownEventHandler(this.exgrid1_MouseDownEvent); exgrid1.BeginUpdate(); exgrid1.HeaderHeight = 22; exgrid1.HeaderAppearance = exontrol.EXGRIDLib.AppearanceEnum.Flat; exgrid1.BackColorLock = Color.FromArgb(240,240,240); exgrid1.BackColorHeader = exgrid1.BackColorLock; exgrid1.HasLines = exontrol.EXGRIDLib.HierarchyLineEnum.exNoLine; exgrid1.ColumnAutoResize = false; exgrid1.SortBarVisible = false; exgrid1.AllowGroupBy = true; exgrid1.ReadOnly = exontrol.EXGRIDLib.ReadOnlyEnum.exReadOnly; exgrid1.ShowFocusRect = false; exgrid1.CountLockedColumns = 1; exgrid1.AutoDrag = exontrol.EXGRIDLib.AutoDragEnum.exAutoDragScroll; exgrid1.SingleSort = false; exgrid1.ColumnsAllowSizing = true; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exAllLines; exgrid1.GridLineStyle = exontrol.EXGRIDLib.GridLinesStyleEnum.exGridLinesSolid; exgrid1.GridLineColor = Color.FromArgb(220,220,220); // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.Columns[0].Data = -1; exgrid1.Layout = "singlesort=\"C5:1\";multiplesort=\" C1:2\""; exgrid1.EndUpdate(); |
955 |
The user are not able to size the columns at runtime when using HeaderAppearance property on zero
exgrid1.VisualAppearance.Add(1,"gBFLBCJwBAEHhEJAAEhABJEIQAAYAQGKIYBkAKBQAGaAoDDcMQ5QwAAyDGKEEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQiiCYsS5GQBSFDcOwHGyQZonKK3L" + "hGCYBgIA="); exgrid1.HeaderAppearance = (exontrol.EXGRIDLib.AppearanceEnum)0x1000000; exgrid1.Columns.Add(1.ToString()); exgrid1.Columns.Add(2.ToString()); exgrid1.Columns.Add(3.ToString()); |
954 |
Is it possible to embed the exGauge into the exGrid control
// ItemOleEvent event - Fired when an ActiveX control hosted by an item has fired an event. private void exgrid1_ItemOleEvent(object sender,int Item,exontrol.EXGRIDLib.OleEvent Ev) { // Add 'ExGauge 1.0 Control Library(ExGauge.dll)' reference to your project. exontrol.EXGAUGELib.exgauge var_Gauge = (exgrid1.Items.get_ItemObject(exgrid1.Items[2]) as exontrol.EXGAUGELib.exgauge); object v = var_Gauge.FormatABC("date(`now`)",null,null,null); var_Gauge.Layers["sec"].Value = v; var_Gauge.Layers["min"].Value = v; var_Gauge.Layers["hour"].Value = v; } //this.exgrid1.ItemOleEvent += new exontrol.EXGRIDLib.exg2antt.ItemOleEventEventHandler(this.exgrid1_ItemOleEvent); // MouseMove event - Occurs when the user moves the mouse. private void exgrid1_MouseMoveEvent(object sender,short Button,short Shift,int X,int Y) { exontrol.EXGAUGELib.exgauge var_Gauge = (exgrid1.Items.get_ItemObject(exgrid1.Items[2]) as exontrol.EXGAUGELib.exgauge); var_Gauge.TimerInterval = 1000; } //this.exgrid1.MouseMoveEvent += new exontrol.EXGRIDLib.exg2antt.MouseMoveEventHandler(this.exgrid1_MouseMoveEvent); exgrid1.BeginUpdate(); exgrid1.ScrollBySingleLine = true; exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exgrid1.HasLines = exontrol.EXGRIDLib.HierarchyLineEnum.exThinLine; exgrid1.ScrollBySingleLine = true; exgrid1.Columns.Add("Default"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Normal Item"); h = var_Items.AddItem("Gauge-Clock Inside"); var_Items.set_ExpandItem(h,true); h = var_Items.InsertControlItem(h,"Exontrol.Gauge",null); var_Items.set_ItemHeight(h,256); exontrol.EXGAUGELib.exgauge var_Gauge = (var_Items.get_ItemObject(h) as exontrol.EXGAUGELib.exgauge); var_Gauge.PicturesPath = "C:\\Program Files\\Exontrol\\ExGauge\\Sample\\Design\\Circular\\Clock"; var_Gauge.set_DefaultLayer(exontrol.EXGAUGELib.DefaultLayerPropertyEnum.exDefLayerRotateType,2); var_Gauge.Layers.Count = 4; exontrol.EXGAUGELib.Layer var_Layer = var_Gauge.Layers[0]; var_Layer.Background.Picture.Name = "vista_clock.png"; exontrol.EXGAUGELib.Layer var_Layer1 = var_Gauge.Layers[1]; var_Layer1.Position = 3; var_Layer1.Key = "sec"; var_Layer1.OnDrag = exontrol.EXGAUGELib.OnDragLayerEnum.exDoRotate; var_Layer1.Selectable = false; var_Layer1.Background.Picture.Name = "second-hand.png"; var_Layer1.ValueToRotateAngle = "((2:=(((1:=( ( (0:=(value < 0 ? floor(value) + 1 - value : value - floor(value))) < 0.5 ? =:0 : (0:= (=:0 - 0.5)) ) * 24 )) - " + "floor(=:1)) * 60 )) - floor(=:2) ) * 360"; var_Layer1.RotateAngleToValue = "value / 360 / 24 / 60"; exontrol.EXGAUGELib.Layer var_Layer2 = var_Gauge.Layers[2]; var_Layer2.Position = 2; var_Layer2.Key = "min"; var_Layer2.OnDrag = exontrol.EXGAUGELib.OnDragLayerEnum.exDoRotate; var_Layer2.Selectable = false; var_Layer2.Background.Picture.Name = "Minute.png"; var_Layer2.ValueToRotateAngle = "((1:=( ( (0:=(value < 0 ? floor(value) + 1 - value : value - floor(value))) < 0.5 ? =:0 : (0:= (=:0 - 0.5)) ) * 24 )) - floor(" + "=:1)) * 360"; var_Layer2.RotateAngleToValue = "value / 360 / 24 / 60"; exontrol.EXGAUGELib.Layer var_Layer3 = var_Gauge.Layers[3]; var_Layer3.Position = 1; var_Layer3.Key = "hour"; var_Layer3.OnDrag = exontrol.EXGAUGELib.OnDragLayerEnum.exDoRotate; var_Layer3.Background.Picture.Name = "Hour.png"; var_Layer3.ValueToRotateAngle = "2 * 360 * ( (0:=(value < 0 ? floor(value) + 1 - value : value - floor(value))) < 0.5 ? =:0 : (0:= (=:0 - 0.5)) )"; var_Layer3.RotateAngleToValue = "value / 360 * 0.5"; object v = var_Gauge.FormatABC("date(`now`)",null,null,null); var_Gauge.Layers["sec"].Value = v; var_Gauge.Layers["min"].Value = v; var_Gauge.Layers["hour"].Value = v; h = var_Items.AddItem("Normal Item"); exgrid1.EndUpdate(); |
953 |
What's the difference between merge cells and divider item
// AddItem event - Occurs after a new Item has been inserted to Items collection. private void exgrid1_AddItem(object sender,int Item) { exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellBackColor(Item,0,Color.FromArgb(240,240,240)); var_Items.set_ItemHasChildren(Item,true); } //this.exgrid1.AddItem += new exontrol.EXGRIDLib.exg2antt.AddItemEventHandler(this.exgrid1_AddItem); exgrid1.BeginUpdate(); exgrid1.TreeColumnIndex = 0; exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exAllLines; (exgrid1.Columns.Add("C1") as exontrol.EXGRIDLib.Column).FormatColumn = "1 index `A-Z`"; (exgrid1.Columns.Add("C2") as exontrol.EXGRIDLib.Column).FormatColumn = "1 index ``"; (exgrid1.Columns.Add("C3") as exontrol.EXGRIDLib.Column).FormatColumn = "1 index ``"; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem(null); var_Items.AddItem(null); int h = var_Items.AddItem(null); var_Items.set_CellMerge(h,0,1); var_Items.set_FormatCell(h,0,"`merge cells`"); var_Items.set_CellHAlignment(h,0,exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment); h = var_Items.AddItem(null); var_Items.set_ItemDivider(h,0); var_Items.set_CellHAlignment(h,0,exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment); var_Items.set_FormatCell(h,0,"`item divider`"); var_Items.AddItem(null); var_Items.AddItem(null); exgrid1.EndUpdate(); |
952 |
is it possible to resize a column with the mouse without changing the width of the next column
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = false; (exgrid1.Columns.Add("Column 1") as exontrol.EXGRIDLib.Column).Width = 256; (exgrid1.Columns.Add("Column 2") as exontrol.EXGRIDLib.Column).Width = 512; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exAllLines; exgrid1.EndUpdate(); |
951 |
How do I ensure that the newly item fits the control's client area
// ButtonClick event - Occurs when user clicks on the cell's button. private void exgrid1_ButtonClick(object sender,int Item,int ColIndex,object Key) { exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem(""); var_Items.set_SelectItem(h,true); var_Items.EnsureVisibleItem(h); exgrid1.FocusColumnIndex = 0; } //this.exgrid1.ButtonClick += new exontrol.EXGRIDLib.exg2antt.ButtonClickEventHandler(this.exgrid1_ButtonClick); exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("") as exontrol.EXGRIDLib.Column); var_Column.AllowSizing = false; var_Column.AllowDragging = false; var_Column.AllowSort = false; var_Column.Width = 24; var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasButton,true); (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column).FormatColumn = "1 apos `A-Z`"; exgrid1.CountLockedColumns = 1; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem(""); var_Items.AddItem(""); var_Items.AddItem(""); exgrid1.EndUpdate(); |
950 |
How do I find the predefined string for giving value, or giving identifier for specified predefined caption of editor
// Change event - Occurs when the user changes the cell's content. private void exgrid1_Change(object sender,int Item,int ColIndex,ref object NewValue) { System.Diagnostics.Debug.Print( "FindItem(numeric) is " ); System.Diagnostics.Debug.Print( NewValue.ToString() ); System.Diagnostics.Debug.Print( exgrid1.Columns[0].Editor.get_FindItem(NewValue).ToString() ); } //this.exgrid1.Change += new exontrol.EXGRIDLib.exg2antt.ChangeEventHandler(this.exgrid1_Change); exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("DropDownList") as exontrol.EXGRIDLib.Column); exontrol.EXGRIDLib.Editor var_Editor = var_Column.Editor; var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.DropDownListType; var_Editor.AddItem(1,"Ken Robinson",null); var_Editor.AddItem(2,"Dave Nichols",null); var_Editor.AddItem(3,"Zane Thomas",null); var_Editor.AddItem(4,"James Shields",null); exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("CellValue") as exontrol.EXGRIDLib.Column); var_Column1.FormatColumn = "%0"; var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellBackColor,15790320); var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exHeaderBackColor,var_Column1.get_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellBackColor)); exontrol.EXGRIDLib.Column var_Column2 = (exgrid1.Columns.Add("CellCaption") as exontrol.EXGRIDLib.Column); var_Column2.FormatColumn = "%C0"; var_Column2.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellBackColor,15790320); var_Column2.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exHeaderBackColor,var_Column2.get_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellBackColor)); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem(1); var_Items.AddItem(exgrid1.Columns[0].Editor.get_FindItem("Zane Thomas")); var_Items.AddItem(2); exgrid1.EndUpdate(); |
949 |
How can I align captions of items with checkbox, with items with no checkbox
exgrid1.BeginUpdate(); exgrid1.Columns.Add("Default"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellImages(var_Items.AddItem(0),0,"1"); var_Items.set_CellHasCheckBox(var_Items.AddItem(1),0,true); var_Items.set_CellImages(var_Items.AddItem(2),0,"1"); exgrid1.EndUpdate(); |
948 |
How can I prevent sorting a column
exgrid1.BeginUpdate(); exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Default") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true); var_Column.PartialCheck = true; var_Column.AllowSort = false; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Root"); var_Items.InsertItem(h,null,"Child 1"); var_Items.InsertItem(h,null,"Child 2"); var_Items.set_ExpandItem(h,true); exgrid1.EndUpdate(); |
947 |
Is there a possibility to group without moving and showing the column to the SortBar
|
946 |
How can I show each group header ( not-subroup ), with a different background color, while alternate background colors for inside items
// LayoutChanged event - Occurs when column's position or column's size is changed. private void exgrid1_LayoutChanged(object sender) { exgrid1.Refresh(); } //this.exgrid1.LayoutChanged += new exontrol.EXGRIDLib.exg2antt.LayoutChangedEventHandler(this.exgrid1_LayoutChanged); exgrid1.BeginUpdate(); exgrid1.HasLines = exontrol.EXGRIDLib.HierarchyLineEnum.exNoLine; exgrid1.ColumnAutoResize = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.SingleSort = false; exgrid1.SortBarVisible = true; exgrid1.AllowGroupBy = true; exgrid1.Columns[1].SortOrder = true; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column); var_Column.FormatColumn = "(0:= (1 rpos '')) right ( ( 1:= ( =:0 rfind `.` ) ) != -1 ? =:1 : len(=:0))"; var_Column.Visible = false; exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column); var_Column1.FormatColumn = "(1 rpos '') contains '.'"; var_Column1.Visible = false; exgrid1.ConditionalFormats.Add("(%C13 mod 2) != 0",null).BackColor = Color.FromArgb(240,240,240); exgrid1.ConditionalFormats.Add("%C14 = 0",null).BackColor = Color.FromArgb(190,190,190); exgrid1.EndUpdate(); |
945 |
What is the difference between %0 and %C0, when using in expressions ( format, conditional format, computed fields, and so on )
exgrid1.BeginUpdate(); exgrid1.HeaderAppearance = exontrol.EXGRIDLib.AppearanceEnum.Etched; exgrid1.HeaderHeight = 24; exgrid1.ScrollBySingleLine = true; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; (exgrid1.Columns.Add("Value") as exontrol.EXGRIDLib.Column).set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("FormatColumn = `%0` ~ CellValue") as exontrol.EXGRIDLib.Column); var_Column.FormatColumn = "%0"; var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellSingleLine,false); exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("FormatColumn = `%C0`~ CellCaption") as exontrol.EXGRIDLib.Column); var_Column1.FormatColumn = "%C0"; var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellSingleLine,false); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem(1.1234); var_Items.set_CellValueFormat(var_Items.AddItem("<sha ;;0>This <fgcolor=FF0000>is a <s><b>HTM</fgcolor>L</b> text</s>."),0,exontrol.EXGRIDLib.ValueFormatEnum.exHTML); exontrol.EXGRIDLib.Editor var_Editor = var_Items.get_CellEditor(var_Items.AddItem(3),null); var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.CheckListType; var_Editor.AddItem(1,"Border",null); var_Editor.AddItem(2,"Thick",null); var_Editor.AddItem(4,"Shadow",null); var_Items.set_FormatCell(var_Items.AddItem(10000),0,"`<b>` + currency(value)"); exgrid1.EndUpdate(); |
944 |
How can I alternate colors for each group header ( not-subroup ), with a different background color, while items of the same group showing with a different color
// LayoutChanged event - Occurs when column's position or column's size is changed. private void exgrid1_LayoutChanged(object sender) { exgrid1.Refresh(); } //this.exgrid1.LayoutChanged += new exontrol.EXGRIDLib.exg2antt.LayoutChangedEventHandler(this.exgrid1_LayoutChanged); exgrid1.BeginUpdate(); exgrid1.HasLines = exontrol.EXGRIDLib.HierarchyLineEnum.exNoLine; exgrid1.ColumnAutoResize = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.SingleSort = false; exgrid1.SortBarVisible = true; exgrid1.AllowGroupBy = true; exgrid1.Columns[1].SortOrder = true; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column); var_Column.FormatColumn = "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"; var_Column.Visible = false; exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column); var_Column1.FormatColumn = "(1 rpos '') contains '.'"; var_Column1.Visible = false; exgrid1.ConditionalFormats.Add("(%C13 mod 2) != 0",null).BackColor = Color.FromArgb(240,240,240); exgrid1.ConditionalFormats.Add("%C14 = 0",null).BackColor = Color.FromArgb(190,190,190); exgrid1.EndUpdate(); |
943 |
How can I highlight each group header, with a different background color (method 2)
|
942 |
How can I highlight each group header ( not-subroup ), with a different background color (method 1)
// LayoutChanged event - Occurs when column's position or column's size is changed. private void exgrid1_LayoutChanged(object sender) { exgrid1.Refresh(); } //this.exgrid1.LayoutChanged += new exontrol.EXGRIDLib.exg2antt.LayoutChangedEventHandler(this.exgrid1_LayoutChanged); exgrid1.BeginUpdate(); exgrid1.HasLines = exontrol.EXGRIDLib.HierarchyLineEnum.exNoLine; exgrid1.ColumnAutoResize = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.SingleSort = false; exgrid1.SortBarVisible = true; exgrid1.AllowGroupBy = true; exgrid1.Columns[1].SortOrder = true; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column); var_Column.FormatColumn = "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"; var_Column.Visible = false; exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column); var_Column1.FormatColumn = "(1 rpos '') contains '.'"; var_Column1.Visible = false; exgrid1.ConditionalFormats.Add("%C14 = 0",null).BackColor = Color.FromArgb(190,190,190); exgrid1.EndUpdate(); |
941 |
The BackColorAlternate displays each second row with a different background color. Is it possible to apply a different background color, for each sub-tree, ConditionalFormats, Add
// LayoutChanged event - Occurs when column's position or column's size is changed. private void exgrid1_LayoutChanged(object sender) { exgrid1.Refresh(); } //this.exgrid1.LayoutChanged += new exontrol.EXGRIDLib.exg2antt.LayoutChangedEventHandler(this.exgrid1_LayoutChanged); // Sort event - Fired when the control sorts a column. private void exgrid1_Sort(object sender) { exgrid1.Refresh(); } //this.exgrid1.Sort += new exontrol.EXGRIDLib.exg2antt.SortEventHandler(this.exgrid1_Sort); exgrid1.BeginUpdate(); exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("P1") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true); var_Column.PartialCheck = true; exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("P2") as exontrol.EXGRIDLib.Column); var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true); var_Column1.PartialCheck = true; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Root 1"); var_Items.InsertItem(h,null,"Child 1"); var_Items.InsertItem(h,null,"Child 2"); var_Items.set_ExpandItem(h,true); h = var_Items.AddItem("Root 2"); var_Items.InsertItem(h,null,"Child 1"); var_Items.InsertItem(h,null,"Child 2"); var_Items.set_ExpandItem(h,true); h = var_Items.AddItem("Root 2"); var_Items.InsertItem(h,null,"Child 1"); var_Items.InsertItem(h,null,"Child 2"); var_Items.set_ExpandItem(h,true); exontrol.EXGRIDLib.Column var_Column2 = (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column); var_Column2.FormatColumn = "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"; var_Column2.Visible = false; exgrid1.ConditionalFormats.Add("(%C2 mod 2) != 0",null).BackColor = Color.FromArgb(240,240,240); exgrid1.EndUpdate(); |
940 |
The BackColorAlternate displays each second row with a different background color. Is it possible to apply a different background color, for 2nd, 3rd, 4th, row, and so on
// LayoutChanged event - Occurs when column's position or column's size is changed. private void exgrid1_LayoutChanged(object sender) { exgrid1.Refresh(); } //this.exgrid1.LayoutChanged += new exontrol.EXGRIDLib.exg2antt.LayoutChangedEventHandler(this.exgrid1_LayoutChanged); // Sort event - Fired when the control sorts a column. private void exgrid1_Sort(object sender) { exgrid1.Refresh(); } //this.exgrid1.Sort += new exontrol.EXGRIDLib.exg2antt.SortEventHandler(this.exgrid1_Sort); exgrid1.BeginUpdate(); exgrid1.HasLines = exontrol.EXGRIDLib.HierarchyLineEnum.exNoLine; exgrid1.ColumnAutoResize = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column); var_Column.FormatColumn = "1 apos ''"; var_Column.Visible = false; exgrid1.ConditionalFormats.Add("(%C13 mod 5) = 1",null).BackColor = Color.FromArgb(128,128,128); exgrid1.ConditionalFormats.Add("(%C13 mod 5) = 2",null).BackColor = Color.FromArgb(164,164,164); exgrid1.ConditionalFormats.Add("(%C13 mod 5) = 3",null).BackColor = Color.FromArgb(190,190,190); exgrid1.ConditionalFormats.Add("(%C13 mod 5) = 4",null).BackColor = Color.FromArgb(240,240,240); exgrid1.EndUpdate(); |
939 |
The BackColorAlternate displays each second row with a different background color. The question I have it is possible to apply a different background color for 3rd, 4th, row, and so on
// LayoutChanged event - Occurs when column's position or column's size is changed. private void exgrid1_LayoutChanged(object sender) { exgrid1.Refresh(); } //this.exgrid1.LayoutChanged += new exontrol.EXGRIDLib.exg2antt.LayoutChangedEventHandler(this.exgrid1_LayoutChanged); // Sort event - Fired when the control sorts a column. private void exgrid1_Sort(object sender) { exgrid1.Refresh(); } //this.exgrid1.Sort += new exontrol.EXGRIDLib.exg2antt.SortEventHandler(this.exgrid1_Sort); exgrid1.BeginUpdate(); exgrid1.HasLines = exontrol.EXGRIDLib.HierarchyLineEnum.exNoLine; exgrid1.ColumnAutoResize = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column); var_Column.FormatColumn = "1 apos ''"; var_Column.Visible = false; exgrid1.ConditionalFormats.Add("(%C13 mod 4) = 0",null).BackColor = Color.FromArgb(240,240,240); exgrid1.EndUpdate(); |
938 |
The BackColorAlternate looks fine for flat tables, but how about using it when displaying a hierarchy/tree, like grouping rows. The sample alternate colors for each group found
// LayoutChanged event - Occurs when column's position or column's size is changed. private void exgrid1_LayoutChanged(object sender) { exgrid1.Refresh(); } //this.exgrid1.LayoutChanged += new exontrol.EXGRIDLib.exg2antt.LayoutChangedEventHandler(this.exgrid1_LayoutChanged); exgrid1.BeginUpdate(); exgrid1.HasLines = exontrol.EXGRIDLib.HierarchyLineEnum.exNoLine; exgrid1.ColumnAutoResize = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.SingleSort = false; exgrid1.SortBarVisible = true; exgrid1.AllowGroupBy = true; exgrid1.Columns[1].SortOrder = true; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Position") as exontrol.EXGRIDLib.Column); var_Column.FormatColumn = "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"; var_Column.Visible = false; exgrid1.ConditionalFormats.Add("(%C13 mod 2) != 0",null).BackColor = Color.FromArgb(240,240,240); exgrid1.EndUpdate(); |
937 |
I need to display sub-totals in the grouping items. Is there any solution on this
// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection. private void exgrid1_AddGroupItem(object sender,int Item) { exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_ItemDivider(Item,-1); var_Items.set_EnableItem(Item,false); var_Items.set_CellValueFormat(Item,exgrid1.TreeColumnIndex,exontrol.EXGRIDLib.ValueFormatEnum.exHTML); var_Items.set_FormatCell(Item,exgrid1.TreeColumnIndex,"%1"); var_Items.set_CellValueFormat(Item,"Freight",exontrol.EXGRIDLib.ValueFormatEnum.exTotalField | exontrol.EXGRIDLib.ValueFormatEnum.exHTML); var_Items.set_CellValue(Item,"Freight","sum(current,dir,%6)"); var_Items.set_FormatCell(Item,"Freight","`<b>` + currency(value)"); } //this.exgrid1.AddGroupItem += new exontrol.EXGRIDLib.exg2antt.AddGroupItemEventHandler(this.exgrid1_AddGroupItem); exgrid1.BeginUpdate(); exgrid1.SelBackMode = exontrol.EXGRIDLib.BackModeEnum.exTransparent; exgrid1.BackColorSortBar = Color.FromArgb(240,240,240); exgrid1.ColumnAutoResize = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.SortBarVisible = true; exgrid1.SortBarCaption = "Drag a <b>column</b> header here to group by that column."; exgrid1.AllowGroupBy = true; exgrid1.Columns[1].SortOrder = exontrol.EXGRIDLib.SortOrderEnum.SortAscending; exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exGroupLinesOutside; exgrid1.Columns["ShipVia"].DisplayFilterButton = true; exgrid1.EndUpdate(); |
936 |
I use a subtotal in exTop-Item, after grouping the item shows 0. What is the solution
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.SingleSort = false; exgrid1.AllowGroupBy = true; exgrid1.SortBarVisible = true; exgrid1.BackColorSortBar = exgrid1.BackColor; exgrid1.Columns[5].SortOrder = exontrol.EXGRIDLib.SortOrderEnum.SortAscending; exgrid1.Columns[6].FormatColumn = "currency(value)"; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_LockedItemCount(exontrol.EXGRIDLib.VAlignmentEnum.exTop,1); int h = var_Items.get_LockedItem(exontrol.EXGRIDLib.VAlignmentEnum.exTop,0); var_Items.set_ItemBackColor(h,Color.FromArgb(240,240,240)); var_Items.set_CellBackColor(h,6,Color.FromArgb(190,190,190)); var_Items.set_CellValue(h,6,"sum(all,rec,%6)"); var_Items.set_CellValueFormat(h,6,exontrol.EXGRIDLib.ValueFormatEnum.exTotalField); exgrid1.Refresh(); exgrid1.EndUpdate(); |
935 |
I would like to avoid manual typing in the date-cell because user often type wrong things (no decimal points and so on) and so the todays-date is generated for the cell. What can be done
// KeyPress event - Occurs when the user presses and releases an ANSI key. private void exgrid1_KeyPress(object sender,ref short KeyAscii) { System.Diagnostics.Debug.Print( "if .Editying != 0 then" ); System.Diagnostics.Debug.Print( exgrid1.Editing.ToString() ); KeyAscii = 0; } //this.exgrid1.KeyPress += new exontrol.EXGRIDLib.exg2antt.KeyPressEventHandler(this.exgrid1_KeyPress); exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = false; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; var_Columns.Add("Tasks"); exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("Date") as exontrol.EXGRIDLib.Column); var_Column.Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.DateType; var_Column.Width = 128; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem("Item 1"),1,Convert.ToDateTime("9/21/2006",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(var_Items.AddItem("Item 2"),1,Convert.ToDateTime("12/22/2015",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(var_Items.AddItem("Item 3"),1,Convert.ToDateTime("1/10/2015",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); exgrid1.EndUpdate(); |
934 |
The control does not ensure the item to fit the control's client area once the user clicks the cell's button or check box. What can be done
// MouseDown event - Occurs when the user presses a mouse button. private void exgrid1_MouseDownEvent(object sender,short Button,short Shift,int X,int Y) { // Items.EnsureVisibleItem(ItemFromPoint(-1,-1,c,hit)) } //this.exgrid1.MouseDownEvent += new exontrol.EXGRIDLib.exg2antt.MouseDownEventHandler(this.exgrid1_MouseDownEvent); exgrid1.BeginUpdate(); exgrid1.TreeColumnIndex = -1; exgrid1.SelForeColor = exgrid1.ForeColor; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Buttons") as exontrol.EXGRIDLib.Column); var_Column.Alignment = exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment; var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasButton,true); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("Button A"); var_Items.AddItem("Button B"); var_Items.AddItem("Button C"); exgrid1.EndUpdate(); |
933 |
How do you save the index number from a drop down to a database
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exontrol.EXGRIDLib.Column var_Column = exgrid1.Columns["ShipVia"]; var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellBackColor,15790320); var_Column.Position = 1; var_Column.Width = 96; exontrol.EXGRIDLib.Editor var_Editor = var_Column.Editor; var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.DropDownListType; var_Editor.AddItem(1,"Speedy Express",null); var_Editor.AddItem(2,"United Package",null); var_Editor.AddItem(3,"Federal Shipping",null); exgrid1.EndUpdate(); |
932 |
Is there a way to set the column width and have it stay when refreshing using the data source
|
931 |
Is it possible to decode/view the control's Layout property
exgrid1.BeginUpdate(); exgrid1.SingleSort = false; exgrid1.Columns.Add("C0"); (exgrid1.Columns.Add("C1") as exontrol.EXGRIDLib.Column).SortOrder = exontrol.EXGRIDLib.SortOrderEnum.SortAscending; exgrid1.Columns.Add("C2"); // Add 'exontrol.exprint.dll(ExPrint.dll)' reference to your project. // Add 'ExPrint 1.0 Control Library(ExPrint.dll)' reference to your project. exontrol.EXPRINTLib.exprint var_Print = new exontrol.EXPRINTLib.exprint(); System.Diagnostics.Debug.Print( var_Print.get_Decode64TextW(exgrid1.Layout) ); exgrid1.EndUpdate(); |
930 |
How do I programmatically sort by multiple columns
|
929 |
Do you have any Fit-To-Page options when printing the control (W x T, Fit-To )
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = false; exgrid1.ContinueColumnScroll = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.EndUpdate(); // Add 'exontrol.exprint.dll(ExPrint.dll)' reference to your project. // Add 'ExPrint 1.0 Control Library(ExPrint.dll)' reference to your project. exontrol.EXPRINTLib.exprint var_Print = new exontrol.EXPRINTLib.exprint(); var_Print.Options = "FitToPage =2 x 1"; var_Print.PrintExt = (exgrid1 as exontrol.EXGRIDLib.exgrid); var_Print.Preview(); |
928 |
Do you have any Fit-To-Page options when printing the control ( x T, Fit-To Tall )
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = false; exgrid1.ContinueColumnScroll = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.EndUpdate(); // Add 'exontrol.exprint.dll(ExPrint.dll)' reference to your project. // Add 'ExPrint 1.0 Control Library(ExPrint.dll)' reference to your project. exontrol.EXPRINTLib.exprint var_Print = new exontrol.EXPRINTLib.exprint(); var_Print.Options = "FitToPage = x 2"; var_Print.PrintExt = (exgrid1 as exontrol.EXGRIDLib.exgrid); var_Print.Preview(); |
927 |
Do you have any Fit-To-Page options when printing the control ( W x, Fit-To Wide )
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = false; exgrid1.ContinueColumnScroll = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.EndUpdate(); // Add 'exontrol.exprint.dll(ExPrint.dll)' reference to your project. // Add 'ExPrint 1.0 Control Library(ExPrint.dll)' reference to your project. exontrol.EXPRINTLib.exprint var_Print = new exontrol.EXPRINTLib.exprint(); var_Print.Options = "FitToPage = 2 x"; var_Print.PrintExt = (exgrid1 as exontrol.EXGRIDLib.exgrid); var_Print.Preview(); |
926 |
Do you have any Fit-To-Page options when printing the control ( percent view, Adjust-To )
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = false; exgrid1.ContinueColumnScroll = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.EndUpdate(); // Add 'exontrol.exprint.dll(ExPrint.dll)' reference to your project. // Add 'ExPrint 1.0 Control Library(ExPrint.dll)' reference to your project. exontrol.EXPRINTLib.exprint var_Print = new exontrol.EXPRINTLib.exprint(); var_Print.Options = "FitToPage = 50%"; var_Print.PrintExt = (exgrid1 as exontrol.EXGRIDLib.exgrid); var_Print.Preview(); |
925 |
How can I get notified once the user expands a column
// LayoutChanged event - Occurs when column's position or column's size is changed. private void exgrid1_LayoutChanged(object sender) { System.Diagnostics.Debug.Print( "Column-Expanded" ); System.Diagnostics.Debug.Print( exgrid1.Columns["C0"].Expanded.ToString() ); } //this.exgrid1.LayoutChanged += new exontrol.EXGRIDLib.exg2antt.LayoutChangedEventHandler(this.exgrid1_LayoutChanged); exgrid1.BeginUpdate(); exgrid1.ShowFocusRect = false; exgrid1.ColumnAutoResize = false; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exAllLines; exgrid1.BackColorLevelHeader = exgrid1.BackColor; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("C0") as exontrol.EXGRIDLib.Column); var_Column.ExpandColumns = "0,1,2"; var_Column.DisplayExpandButton = true; var_Columns.Add("C1"); var_Columns.Add("C2"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Cell 0.0"); var_Items.set_CellValue(h,1,"Cell 0.1"); var_Items.set_CellValue(h,2,"Cell 0.2"); h = var_Items.AddItem("Cell 1.0"); var_Items.set_CellValue(h,1,"Cell 1.1"); var_Items.set_CellValue(h,2,"Cell 1.2"); exgrid1.EndUpdate(); |
924 |
I am using expandable headers, the question is how I can display the column itself, not just the child columns
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = false; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exAllLines; exgrid1.BackColorLevelHeader = exgrid1.BackColor; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("C0") as exontrol.EXGRIDLib.Column); var_Column.ExpandColumns = "0,1,2"; var_Column.DisplayExpandButton = true; var_Columns.Add("C1"); var_Columns.Add("C2"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Cell 0.0"); var_Items.set_CellValue(h,1,"Cell 0.1"); var_Items.set_CellValue(h,2,"Cell 0.2"); h = var_Items.AddItem("Cell 1.0"); var_Items.set_CellValue(h,1,"Cell 1.1"); var_Items.set_CellValue(h,2,"Cell 1.2"); exgrid1.EndUpdate(); |
923 |
How do I layout expandable columns
exgrid1.BeginUpdate(); exgrid1.ColumnAutoResize = false; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exAllLines; exgrid1.BackColorLevelHeader = exgrid1.BackColor; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("C0") as exontrol.EXGRIDLib.Column); var_Column.ExpandColumns = "1,2"; var_Column.DisplayExpandButton = true; var_Columns.Add("C1"); var_Columns.Add("C2"); var_Columns.Add("C3"); exontrol.EXGRIDLib.Column var_Column1 = (var_Columns.Add("C4") as exontrol.EXGRIDLib.Column); var_Column1.ExpandColumns = "5,6"; var_Column1.DisplayExpandButton = true; var_Columns.Add("C5"); exontrol.EXGRIDLib.Column var_Column2 = (var_Columns.Add("C6") as exontrol.EXGRIDLib.Column); var_Column2.ExpandColumns = "6,7"; var_Column2.DisplayExpandButton = true; var_Columns.Add("C7"); exgrid1.EndUpdate(); exgrid1.Columns["C4"].Expanded = false; |
922 |
How do I make the control read-only (method 2)
// Edit event - Occurs just before editing the focused cell. private void exgrid1_EditEvent(object sender,int Item,int ColIndex,ref bool Cancel) { Cancel = true; } //this.exgrid1.EditEvent += new exontrol.EXGRIDLib.exg2antt.EditEventHandler(this.exgrid1_EditEvent); exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Editor var_Editor = (exgrid1.Columns.Add("Editor") as exontrol.EXGRIDLib.Column).Editor; var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.CheckListType; var_Editor.AddItem(1,"One",null); var_Editor.AddItem(2,"Two",null); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Check") as exontrol.EXGRIDLib.Column); exontrol.EXGRIDLib.Editor var_Editor1 = var_Column.Editor; var_Editor1.EditType = exontrol.EXGRIDLib.EditTypeEnum.CheckValueType; var_Editor1.set_Option(exontrol.EXGRIDLib.EditorOptionEnum.exCheckValue1,2); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem(1),1,0); var_Items.set_CellValue(var_Items.AddItem(2),1,1); exgrid1.EndUpdate(); |
921 |
How do I set a locked check-box
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Locked-Check") as exontrol.EXGRIDLib.Column); exontrol.EXGRIDLib.Editor var_Editor = var_Column.Editor; var_Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.CheckValueType; var_Editor.set_Option(exontrol.EXGRIDLib.EditorOptionEnum.exCheckValue1,2); var_Editor.Locked = true; exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("Unlocked-Check") as exontrol.EXGRIDLib.Column); exontrol.EXGRIDLib.Editor var_Editor1 = var_Column1.Editor; var_Editor1.EditType = exontrol.EXGRIDLib.EditTypeEnum.CheckValueType; var_Editor1.set_Option(exontrol.EXGRIDLib.EditorOptionEnum.exCheckValue2,1); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem(1),1,0); var_Items.set_CellValue(var_Items.AddItem(0),1,1); exgrid1.EndUpdate(); |
920 |
Does the title of the cell's tooltip supports HTML format
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("") as exontrol.EXGRIDLib.Column); var_Column.Caption = ""; var_Column.HTMLCaption = "Column"; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellToolTip(var_Items.AddItem("tooltip w/h different title"),0,"<c><b><fgcolor=FF0000>Title</fgcolor></b><br>This is bit of text that's shown when the user hovers the cell. This shows the tit" + "le centered with a different color."); exgrid1.EndUpdate(); |
919 |
How do I specify a different title for the cell's tooltip
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("") as exontrol.EXGRIDLib.Column); var_Column.Caption = "This is the title"; var_Column.HTMLCaption = "Column"; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellToolTip(var_Items.AddItem("tooltip w/h different title"),0,"This is bit of text that's shown when the user hovers the cell."); exgrid1.EndUpdate(); |
918 |
The cell's tooltip displays the column's caption in its title. How can I get ride of that
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; var_Columns.Add("C1"); var_Columns.Add("C2"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("tooltip w/h caption"); var_Items.set_CellToolTip(h,0,"This is bit of text that's shown when the user hovers the cell. This shows the column's caption in the title."); var_Items.set_CellValue(h,1,"tooltip no caption"); var_Items.set_CellToolTip(h,1,"This is bit of text that's shown when the user hovers the cell. This shows no column's caption in the title."); exontrol.EXGRIDLib.Column var_Column = exgrid1.Columns["C2"]; var_Column.HTMLCaption = var_Column.Caption; var_Column.Caption = ""; exgrid1.EndUpdate(); |
917 |
How can I programmatically show the column's filter
// RClick event - Fired when right mouse button is clicked private void exgrid1_RClick(object sender) { int i = exgrid1.get_ItemFromPoint(-1,-1,c,hit); exgrid1.Columns[c].ShowFilter("-1,-1,128,128"); } //this.exgrid1.RClick += new exontrol.EXGRIDLib.exg2antt.RClickEventHandler(this.exgrid1_RClick); exgrid1.BeginUpdate(); exgrid1.ShowFocusRect = false; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Items ") as exontrol.EXGRIDLib.Column); var_Column.DisplayFilterPattern = false; var_Column.FilterList = exontrol.EXGRIDLib.FilterListEnum.exShowExclude | exontrol.EXGRIDLib.FilterListEnum.exShowFocusItem | exontrol.EXGRIDLib.FilterListEnum.exShowCheckBox; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("Item 1"); var_Items.AddItem("Item 2"); var_Items.AddItem("Item 3"); exgrid1.EndUpdate(); |
916 |
I want to be able to click on one of the headers, and sort by other column. How can I do that (method 2)
// ColumnClick event - Fired after the user clicks on column's header. private void exgrid1_ColumnClick(object sender,exontrol.EXGRIDLib.Column Column) { // Column.SortOrder = 1 exgrid1.SortOnClick = exontrol.EXGRIDLib.SortOnClickEnum.exDefaultSort; exgrid1.Columns["Sort"].SortOrder = exontrol.EXGRIDLib.SortOrderEnum.SortAscending; exgrid1.SortOnClick = exontrol.EXGRIDLib.SortOnClickEnum.exUserSort; } //this.exgrid1.ColumnClick += new exontrol.EXGRIDLib.exg2antt.ColumnClickEventHandler(this.exgrid1_ColumnClick); exgrid1.BeginUpdate(); exgrid1.SortOnClick = exontrol.EXGRIDLib.SortOnClickEnum.exUserSort; exgrid1.Columns.Add("Items"); (exgrid1.Columns.Add("Sort") as exontrol.EXGRIDLib.Column).Visible = false; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem("Item 1 (3)"),1,3); var_Items.set_CellValue(var_Items.AddItem("Item 2 (1)"),1,1); var_Items.set_CellValue(var_Items.AddItem("Item 3 (2)"),1,2); exgrid1.EndUpdate(); |
915 |
I want to be able to click on one of the headers, and sort by other column. How can I do that (method 1)
// ColumnClick event - Fired after the user clicks on column's header. private void exgrid1_ColumnClick(object sender,exontrol.EXGRIDLib.Column Column) { // Column.SortOrder = 1 exgrid1.Items.SortChildren(0,"Sort",true); } //this.exgrid1.ColumnClick += new exontrol.EXGRIDLib.exg2antt.ColumnClickEventHandler(this.exgrid1_ColumnClick); exgrid1.BeginUpdate(); exgrid1.SortOnClick = exontrol.EXGRIDLib.SortOnClickEnum.exUserSort; exgrid1.Columns.Add("Items"); (exgrid1.Columns.Add("Sort") as exontrol.EXGRIDLib.Column).Visible = false; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem("Item 1 (3)"),1,3); var_Items.set_CellValue(var_Items.AddItem("Item 2 (1)"),1,1); var_Items.set_CellValue(var_Items.AddItem("Item 3 (2)"),1,2); exgrid1.EndUpdate(); |
914 |
How can I highlight the cell's button with a different appearance, when cursor hovers it
exgrid1.BeginUpdate(); exgrid1.VisualAppearance.Add(1,"c:\\exontrol\\images\\normal.ebn"); exgrid1.DefaultItemHeight = 22; exgrid1.TreeColumnIndex = -1; exgrid1.SelForeColor = Color.FromArgb(0,0,0); exgrid1.SelBackColor = exgrid1.BackColor; exgrid1.set_Background32(exontrol.EXGRIDLib.BackgroundPartEnum.exCursorHoverCellButton,0x1000000); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Buttons") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasButton,true); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); var_Column.Alignment = exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment; var_Column.HeaderAlignment = exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("Button <b>1</b>"); var_Items.AddItem("Button <b>2</b>"); var_Items.AddItem("Button <b>3</b>"); exgrid1.EndUpdate(); |
913 |
How can I prevent highlighting the cell's button while cursor hovers it
// AddItem event - Occurs after a new Item has been inserted to Items collection. private void exgrid1_AddItem(object sender,int Item) { exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(Item,0,"Button <b>A</b>"); var_Items.set_CellValue(Item,1,"Button <b>B</b>"); } //this.exgrid1.AddItem += new exontrol.EXGRIDLib.exg2antt.AddItemEventHandler(this.exgrid1_AddItem); exgrid1.BeginUpdate(); exgrid1.DefaultItemHeight = 22; exgrid1.TreeColumnIndex = -1; exgrid1.SelForeColor = Color.FromArgb(0,0,0); exgrid1.SelBackColor = exgrid1.BackColor; exgrid1.set_Background32(exontrol.EXGRIDLib.BackgroundPartEnum.exCursorHoverCellButton,-1); exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("A") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasButton,true); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); var_Column.Alignment = exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment; var_Column.HeaderAlignment = exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment; exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("B") as exontrol.EXGRIDLib.Column); var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasButton,true); var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); var_Column1.Alignment = exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment; var_Column1.HeaderAlignment = exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment; (exgrid1.Columns.Add("") as exontrol.EXGRIDLib.Column).Position = 1; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellEnabled(var_Items.AddItem(""),1,false); var_Items.AddItem(""); var_Items.AddItem(""); exgrid1.EndUpdate(); |
912 |
How can I change the image of the icon while performing OLE Drag and Drop
// OLEStartDrag event is not supported. Use the DragEnter,DragLeave,DragOver, DragDrop ... events. exgrid1.BeginUpdate(); exgrid1.OLEDropMode = exontrol.EXGRIDLib.exOLEDropModeEnum.exOLEDropManual; exgrid1.ColumnAutoResize = false; exgrid1.DefaultItemHeight = 22; exgrid1.HeaderHeight = exgrid1.DefaultItemHeight; (exgrid1.Columns.Add("Default") as exontrol.EXGRIDLib.Column).Width = 128; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("Item 1"); var_Items.AddItem("Item 2"); var_Items.AddItem("Item 3"); var_Items.AddItem("Item 4"); var_Items.AddItem("Item 5"); exontrol.EXGRIDLib.Appearance var_Appearance = exgrid1.VisualAppearance; var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAChABakMACAADACAxRDQNABQKAAzQFAYaBiG6GAAGEaRYgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjH" + "LUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQIhsC4JUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU8lORLUi+M4zSBPcZVTRtGShPDB" + "KTjMLaYgkIIlVpRNa0PC1GTzQ6mazkKQLRADDIDVbAeL3LiMBy9LyLLItQALByua5mWhbcZyBCOPgBTrRb5zO58FjuTK7YLjMB7NrUNYtFaUMy2OpOCADIaecTNcaWLx" + "PF2MY1HWYxVj2Jw3DuRJonKYB5lKAYkkYdA6hyDIjBkApaFoAAhBMfYxiGNAkFECZnm4YQBgiOgDl2URSE4KAEj2AJKigFgGgGYIIAyPQ6CCRogAAOxhAMSgSDgIRDhY" + "FoFmGCBmBQOAMjgdgQDsUITEIIg5iISAEmIOBigiJgqgqYhoFyVILyyMgyDmYxDg4rBjgiZg6g0Dh4kiTIMGMKAwmgOQkEkFhGhGZIJAoPoQAyQ4mE6BhlAkRgXhODoZ" + "C0A4Pg6KRmCSFplkkdheDmJYTioVgACOY4uGaDwmgmJhqg8JlWmOGRmGkChyhyZxJAobYbmMI4yHqFQnkmdh+2RYp4DMIZ5gaBohmiCYGB+IJOmoNhtiPXZGG2I1tgyb" + "4lmgGhmhqJt0Fyb4gk8CtsCiahKhYH4oXiAohiUKpKjaLt+goDJxiyaZqlaNot4OTJx3gKp2iiL5sAsBoov+KgMnOMZrisJpKjLjocnPeBLEaRI0m0SxWkSNBPEoDJ1j" + "abJrHaXo35obOZC2OximaOZugsYpi3ga42mKO5vAuRpijsTxqAyd49m8S5mnqPuqFyd4gk+DAGn6QJwEwFp+kAT+BnmQpwgwNwOkPtYsnnrgsFcEpFnGDBnBKRRPiwUw" + "ckecgMgcIpHGMKQwnuSZygyJ1/HKOgMnyS5zAyRwykycw5g4Eg0jCA57DqTpzkydw+kIDR9AUCY9A2HQXBIUh0g0JRJ5aUxmnQZIPnkUgvDUI5tFcVoPjUOB+A4QBAIC" + "A"); var_Appearance.Add(2,"gBFLBCJwBAEHhEJAAChABC8MACAADACAxRDQNABQKAAzQFAYaBiG6GAAGEaRYgmFgAQhFcZQSKUOQTDKMIziaQIRDINQlSTJcQjKKEUQTFiXIyAKKwEgmEQMQiCcbzX" + "IUBxAAqXZZFUaKAgOMJDTLBAzUTCQbR7HiQYyBeCQOo+VoaSACEIlAZJRjoOo5DJGGQILlQJqyYrpaAxIgkEJuTqGoQaXgle53PJeLpXW5Nez9P7AMBwK7bbaqeTyXa+" + "eDtJhif4cXjIMhyLI8UxXEKOL7jDSYPgqK48QhCEJQPQ9EyXJqnahoemCeRXBZ+aqxbBsCwCep0YBeNr3HaNaz3PK/brtWxMDpeA5IYhhF7WdZFR4tMrOdAtHL9FyPJ5" + "TFicgXnoTAKAsRpHPeVhrAUd4LkmY5yj+fQ+i8L4zk+Y5vjCe4oD6ZoNhSRxiisVRKg+T5vnWfB6h6J5yAIf4fieWJFHyHZHHSTAygyAociMKBKEKBIeCiCZyHYFAnCA" + "B4mBeBQJlgRIegOCgYCySAgh2WAkgINAMmMNIgCcCYoGYLoLmKaIshqCgMliEICgmDRDEiUQmkmAhWDCD5inicIVg4TQYloJg2g2ExYhoJZJEidIThMCQSFyEwkGKaRK" + "FEJQJBkOhLCUJIDFoRiKBmBJhDeDZZDoPAlgmQhghaGZimmHhphqZopDoYw3GYEgFgGHROGOFJkCSSQCDoTAkiSaQ6C6IBJFkPIUCSJ5CDoeQ5CcVZ5gWHROmONJsCMS" + "ISByEFyjIRoYiaKYaG6HonEiOhcguJQIHoRJsh0WBWB2JIpiqShKi0OwqnqRouiyTpGhGBxiYIZKOhqGp2j4aRaAqZL3FAECAgA=="); exgrid1.set_Background32(exontrol.EXGRIDLib.BackgroundPartEnum.exDragDropBefore,0x1000000); exgrid1.set_Background32(exontrol.EXGRIDLib.BackgroundPartEnum.exDragDropAfter,0x2000000); exgrid1.set_Background(exontrol.EXGRIDLib.BackgroundPartEnum.exDragDropForeColor,Color.FromArgb(0,0,1)); exgrid1.EndUpdate(); |
911 |
How can I sort by two-columns, one by date and one by time
exgrid1.BeginUpdate(); exgrid1.SingleSort = false; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; (var_Columns.Add("Index") as exontrol.EXGRIDLib.Column).FormatColumn = "1 index ``"; (var_Columns.Add("Date") as exontrol.EXGRIDLib.Column).SortType = exontrol.EXGRIDLib.SortTypeEnum.SortDate; exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("Time") as exontrol.EXGRIDLib.Column); var_Column.SortType = exontrol.EXGRIDLib.SortTypeEnum.SortTime; var_Column.FormatColumn = "time(value)"; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem(0); var_Items.set_CellValue(h,1,Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,2,Convert.ToDateTime("1/1/2001 10:00:00",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); h = var_Items.AddItem(0); var_Items.set_CellValue(h,1,Convert.ToDateTime("12/31/2000",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,2,Convert.ToDateTime("1/1/2001 10:00:00",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); h = var_Items.AddItem(0); var_Items.set_CellValue(h,1,Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,2,Convert.ToDateTime("1/1/2001 6:00:00",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); h = var_Items.AddItem(0); var_Items.set_CellValue(h,1,Convert.ToDateTime("12/31/2000",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,2,Convert.ToDateTime("1/1/2001 8:00:00",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); h = var_Items.AddItem(0); var_Items.set_CellValue(h,1,Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,2,Convert.ToDateTime("1/1/2001 8:00:00",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); h = var_Items.AddItem(0); var_Items.set_CellValue(h,1,Convert.ToDateTime("12/31/2000",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); var_Items.set_CellValue(h,2,Convert.ToDateTime("1/1/2001 6:00:00",System.Globalization.CultureInfo.GetCultureInfo("en-US"))); exgrid1.Layout = "multiplesort=\"C1:1 C2:1\""; exgrid1.EndUpdate(); |
910 |
How can I display a context menu
|
909 |
Also, are there any plans on the ability to put borders on individual cells or rows or columns
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Appearance var_Appearance = exgrid1.VisualAppearance; var_Appearance.Add(1,"gBFLBCJwBAEHhEJAAChABOUGACAADACAxRDQNABQKAAzQFAYbBkGqGAAGIYxYgmFgAQhFcZQSpEEg7BKMYwjOJgFgmEQxDANIBQSKoaQiGQYRhkEYgEiONoaDJCM4wH" + "IMQxHCKTZRkGYpajOPobUbGUywHRcRRvH6EZQGWg6GjqK43SCEEZhJBNGyTJ6BZbGURbCqSLAwWZAYy2RCMRxDJqLKypSwKPoGKosS5OUwzHItaRtHaJJAwKZ6ApGQpR" + "VTAYxVfC1PzkACma4nS7oXraVJFVZTdYwTh+JABTzGLpnKw7FhGa5pABpdq0RTuOZdAbPMoyXBrXqqB46UCOGg5HRWWwHR7ZIquap9JzfCq5cRbWr5BBOPaBYKwdD1CB" + "+iMVRnlQRY4hafZwAMH5Pl4XQnjCEBECSIBpDGHQOicIwtBIBpmiWEIJj6eJQloEgomafgyGGCI6kKYZQH+igGAKAJgEgFgGgGYIFlCf4CmCSA2A6A5hAgRgEgQYRIFY" + "FIEmEaBmBmBghigdgQgcIZogYC4ICIKB6CSCRhiiHgogWIooi4F4AmKaIaDCDBihiTg0gsIIYmYOoOmOSJ2D6AZQBAgI="); var_Appearance.Add(2,"gBFLBCJwBAEHhEJAAChABdUIQAAYAQGKIaBoAKBQAGaAoDDYMg1QwAAxDGLEEwsACEIrjKCVIgkHYJRjGEZxNCMIhiGAaQChEZYHgkMomDAOEgyHKcEgJGyEQgkOa4a" + "jCKYrSzAcrwTI4cRVHiQZygOZ4DBSOY8VBAcQweItJhrKqVRgriitNQjCyjZCpOaIDooAJmRZNNISBBIEQSKA0TDOQ5TSKUMYhOZTBBEbbMNBtBIUIRpajbMBiFywUxU" + "OJYXhmG4dR7IMhyLI8UxXFo7P7mOZZXjmO49T7Kc70LQ9CyHJKnabpWoaXj2VZZV7Mda2DTNSzPKK1bZpG4bTouKZ5WjfN72fgeCzrF7HchyPJcXxnG4ZAMBA"); var_Appearance.Add(3,"gBFLBCJwBAEHhEJAAChABL0GACAADACAxRDQNABQKAAzQFAYbBkGqGAAGIYxYgmFgAQhFcZQSpEEg7BKMYwjOJgEgmEQxDANIBQSKoaQiGQYRhkEYpFiONoXDJCM4wH" + "IMQxHCKTZRkGYpajOPobUbGUygBRdExvEyEZQGWg6GjqK43SCEEZhJBNGyfH6dBpEWT7ChENQwWLLFoRDIcQyXCytIDter4boGKosS5OUwzGAtaRvHaJJAwKZ6ApGQpR" + "VTAYxUdC1HTjJiEa4nS7oXraVJFVZTdYwTh+JABTzGKbsSycKqWaqkABZeoWbTuOZdAbPMoyXBrXgOLYzUCOGg5HRWWwHR7ZIq0Pg9Hqaa4bVbIVxbcAGH6BQa6J5hEB" + "ECSIBpDGHQOicIwtBIBpmhqEIJj2eJQloEgokiegyGGCI6kKZ5BnefA+D8L4flOa52nufg+g+f5fnPFB/ooBZ1omSAWASAJgGgJgJgIIIoDYAIDCCaBFnuBAhCgOgUgU" + "YIoF4GIBiGKBuAcfohmgNgdggX54g4JB/F+GImCqCpikiNguguUAQICA="); var_Appearance.Add(4,"gBFLBCJwBAEHhEJAAChABBUGACAADACAxRDQNABQKAAzQFAYbBkGqGAAGIYxYgmFgAQhFcZQSpEEg7BKMYwjOJgCgmEQxDANMiwGKoaQiGQYRhkEYgFiONoaDJCM4wH" + "IMQxHCKTZRkGYpajOPobUbAYQQSAkEgpECbZqoEZaDoaOorTZINJ0VR1Ox5KKfZyGURZPqOEQ1DBZEI2RZUbxDJquLhACj7AjeZZtRJZVp2TY9eQ3LC3aYhGqwAwSFpJ" + "VjUEBgRBJIDSMY6DpOIxaEgNZpwEITOTxUK0EhRLy5agDCJ1QrCdanahqOpaXpmW5dV7YNh2LTnfzXNq3bhuO5bXqOd59X7fN54Dg+D4LRLHbpxXIcXqvFaZZDnOb4To" + "PEuAZUmqcB2B2DoHGuN5Tm6d46lsPwfhOS5mnOeg9DqCAIICA"); exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exGroupLinesAtRoot; exgrid1.SelBackColor = exgrid1.BackColor; exgrid1.SelForeColor = exgrid1.ForeColor; exgrid1.DefaultItemHeight = 22; exgrid1.Columns.Add(""); (exgrid1.Columns.Add("") as exontrol.EXGRIDLib.Column).set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellBackColor,33554432); exgrid1.Columns.Add(""); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Root 1"); var_Items.set_ItemBackColor32(h,0x1000000); object hx = var_Items.get_SplitCell(h,0); var_Items.set_CellValue(0,hx,"count(current,dir,1)"); var_Items.set_CellValueFormat(0,hx,exontrol.EXGRIDLib.ValueFormatEnum.exTotalField); var_Items.set_FormatCell(0,hx,"'Childs: ' + value"); var_Items.set_CellBackColor32(0,hx,0x3000000); var_Items.set_CellHAlignment(0,hx,exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment); var_Items.InsertItem(h,null,"Child 1"); var_Items.InsertItem(h,null,"Child 2"); var_Items.set_ExpandItem(h,true); h = var_Items.AddItem("Root 2"); var_Items.set_ItemBackColor32(h,0x4000000); hx = var_Items.get_SplitCell(h,0); var_Items.set_CellValue(0,hx,"count(current,dir,1)"); var_Items.set_CellValueFormat(0,hx,exontrol.EXGRIDLib.ValueFormatEnum.exTotalField); var_Items.set_FormatCell(0,hx,"'Childs: ' + value"); var_Items.set_CellBackColor32(0,hx,0x3000000); var_Items.set_CellHAlignment(0,hx,exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment); var_Items.InsertItem(h,null,"Child 1"); var_Items.InsertItem(h,null,"Child 2"); var_Items.InsertItem(h,null,"Child 3"); var_Items.set_ItemBackColor32(var_Items.InsertItem(h,null,"Child 4"),0x4000000); exgrid1.EndUpdate(); |
908 |
How can I decode the Layout property
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; var_Columns.Add("C1"); (var_Columns.Add("C2") as exontrol.EXGRIDLib.Column).Position = 1; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem("SubItem 1.1"),1,"SubItem 1.2"); var_Items.set_CellValue(var_Items.AddItem("SubItem 2.1"),1,"SubItem 2.2"); exgrid1.Columns["C2"].SortOrder = exontrol.EXGRIDLib.SortOrderEnum.SortDescending; exgrid1.EndUpdate(); System.Diagnostics.Debug.Print( "Encoded:" ); System.Diagnostics.Debug.Print( exgrid1.Layout ); // Add 'exontrol.exprint.dll(ExPrint.dll)' reference to your project. // Add 'ExPrint 1.0 Control Library(ExPrint.dll)' reference to your project. exontrol.EXPRINTLib.exprint var_Print = new exontrol.EXPRINTLib.exprint(); System.Diagnostics.Debug.Print( "Decoded: " ); System.Diagnostics.Debug.Print( var_Print.get_Decode64TextW(exgrid1.Layout) ); |
907 |
No new line is shown if using <br> tag. How can I show a new line with-in the cell
exgrid1.BeginUpdate(); exgrid1.ScrollBySingleLine = true; exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("Single-Line") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellSingleLine,true); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); exontrol.EXGRIDLib.Column var_Column1 = (exgrid1.Columns.Add("Multiple-Lines") as exontrol.EXGRIDLib.Column); var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellSingleLine,false); var_Column1.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellValueFormat,1); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.set_CellValue(var_Items.AddItem("First-Line<br>Second-Line"),1,"First-Line<br>Second-Line"); int h = var_Items.AddItem("First-Line<br>Second-Line<br>Third-Line"); var_Items.set_CellSingleLine(h,null,exontrol.EXGRIDLib.CellSingleLineEnum.exCaptionWordWrap); var_Items.set_CellHAlignment(h,0,exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment); var_Items.set_ItemDivider(h,0); exgrid1.EndUpdate(); |
906 |
I am using exCRD to layout the columns in the grid, but is there a way where I can have the text in a cell wrap if it's exceeds the width of the cell instead of showing the ...'s
exgrid1.BeginUpdate(); exgrid1.DrawGridLines = exontrol.EXGRIDLib.GridLinesEnum.exRowLines; exgrid1.DefaultItemHeight = 36; exgrid1.FullRowSelect = exontrol.EXGRIDLib.CellSelectEnum.exColumnSel; exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("Column1") as exontrol.EXGRIDLib.Column); var_Column.Visible = false; var_Column.Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.EditType; exontrol.EXGRIDLib.Column var_Column1 = (var_Columns.Add("Column2") as exontrol.EXGRIDLib.Column); var_Column1.Visible = false; var_Column1.Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.EditType; exontrol.EXGRIDLib.Column var_Column2 = (var_Columns.Add("Column3") as exontrol.EXGRIDLib.Column); var_Column2.Visible = false; var_Column2.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellSingleLine,false); var_Column2.Editor.EditType = exontrol.EXGRIDLib.EditTypeEnum.EditType; exontrol.EXGRIDLib.Column var_Column3 = (var_Columns.Add("Column4") as exontrol.EXGRIDLib.Column); var_Column3.Alignment = exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment; var_Column3.HeaderAlignment = exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment; var_Column3.Visible = false; var_Column3.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasButton,true); var_Column3.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellButtonAutoWidth,true); exontrol.EXGRIDLib.Column var_Column4 = (var_Columns.Add("FormatLevel") as exontrol.EXGRIDLib.Column); var_Column4.FormatLevel = "(0/1),\"Information to be shown on the control's header\"[a=17][ww]:128,3:128"; var_Column4.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellFormatLevel,"(0/1),2[a=17][ww]:128,3:128"); exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Cell 1.1"); var_Items.set_CellValue(h,1,"Cell 1.2"); var_Items.set_CellValue(h,2,"This is just a bit of information on first row"); var_Items.set_CellValue(h,3,"Cell 1.4"); var_Items.set_CellSingleLine(h,3,exontrol.EXGRIDLib.CellSingleLineEnum.exCaptionWordWrap); h = var_Items.AddItem("Cell 2.1"); var_Items.set_CellValue(h,1,"Cell 2.2"); var_Items.set_CellValue(h,2,"This is just a bit of information on second row"); var_Items.set_CellValue(h,3,"Cell 2.4"); exgrid1.EndUpdate(); |
905 |
How can I load pictures using URL ( http:// )
// Add 'exontrol.exhttp.dll(ExHTTP.dll)' reference to your project. // Add 'ExHTTP 1.0 Control Library(ExHTTP.dll)' reference to your project. exontrol.EXHTTPLib.exhttp http = new exontrol.EXHTTPLib.exhttp(); exgrid1.PictureDisplay = exontrol.EXGRIDLib.PictureDisplayEnum.LowerRight; exgrid1.Picture = (http.get_GETImage("http://mail.exontrol.com/images/exontrol.png") as Object); |
904 |
How can I filter programmatically by multiple columns
exgrid1.BeginUpdate(); exontrol.EXGRIDLib.Columns var_Columns = exgrid1.Columns; var_Columns.Add("Name"); exontrol.EXGRIDLib.Column var_Column = (var_Columns.Add("Active") as exontrol.EXGRIDLib.Column); var_Column.set_Def(exontrol.EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true); var_Column.DisplayFilterButton = true; var_Columns.Add("Type"); (var_Columns.Add("Mode") as exontrol.EXGRIDLib.Column).FilterType = exontrol.EXGRIDLib.FilterTypeEnum.exFilter; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int h = var_Items.AddItem("Item A"); var_Items.set_CellState(h,1,1); var_Items.set_CellValue(h,2,"A"); h = var_Items.AddItem("Item B"); var_Items.set_CellState(h,1,0); var_Items.set_CellValue(h,2,"B"); h = var_Items.AddItem("Item C"); var_Items.set_CellState(h,1,1); var_Items.set_CellValue(h,2,"C"); var_Items.set_CellValue(h,3,"None"); h = var_Items.AddItem("Item D"); var_Items.set_CellState(h,1,1); var_Items.set_CellValue(h,2,"C"); exontrol.EXGRIDLib.Column var_Column1 = exgrid1.Columns[1]; var_Column1.FilterType = exontrol.EXGRIDLib.FilterTypeEnum.exCheck; var_Column1.Filter = 1.ToString(); exontrol.EXGRIDLib.Column var_Column2 = exgrid1.Columns[2]; var_Column2.FilterType = exontrol.EXGRIDLib.FilterTypeEnum.exFilter; var_Column2.Filter = "C"; exontrol.EXGRIDLib.Column var_Column3 = exgrid1.Columns[3]; var_Column3.FilterType = exontrol.EXGRIDLib.FilterTypeEnum.exNonBlanks; exgrid1.ApplyFilter(); exgrid1.EndUpdate(); |
903 |
How can I add Right-To-Left Reading-Order / RTL Layout
exgrid1.BeginUpdate(); exgrid1.TreeColumnIndex = -1; exontrol.EXGRIDLib.Column var_Column = (exgrid1.Columns.Add("RTL - Header Caption") as exontrol.EXGRIDLib.Column); var_Column.HeaderAlignment = (exontrol.EXGRIDLib.AlignmentEnum)0x20000 | exontrol.EXGRIDLib.AlignmentEnum.RightAlignment; var_Column.Alignment = (exontrol.EXGRIDLib.AlignmentEnum)0x20000 | exontrol.EXGRIDLib.AlignmentEnum.RightAlignment; exgrid1.FullRowSelect = exontrol.EXGRIDLib.CellSelectEnum.exColumnSel; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("RTL - Text Right"); var_Items.set_CellHAlignment(var_Items.AddItem("RTL - Text Center"),0,(exontrol.EXGRIDLib.AlignmentEnum)0x20000 | exontrol.EXGRIDLib.AlignmentEnum.CenterAlignment); var_Items.set_CellHAlignment(var_Items.AddItem("RTL - Text Left"),0,(exontrol.EXGRIDLib.AlignmentEnum)0x20000); exgrid1.EndUpdate(); |
902 |
I have applied ebn to the grid using the following code, and noticed that it applies to the filter dropdownList too. Is there a way to prevent this behavior, like keeping the Filter dropdownlist intact
exgrid1.VisualAppearance.Add(1,"c:\\exontrol\\images\\normal.ebn"); exgrid1.Appearance = (exontrol.EXGRIDLib.AppearanceEnum)0x1000000; exgrid1.BackColorHeader32 = 0x1000000; exgrid1.set_Background32(exontrol.EXGRIDLib.BackgroundPartEnum.exBackColorFilter,0x8000000f); (exgrid1.Columns.Add("Filter") as exontrol.EXGRIDLib.Column).DisplayFilterButton = true; exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; var_Items.AddItem("Item 1"); var_Items.AddItem("Item 2"); |
901 |
The tree lines from the group parent to its children are missing and no identation is present: the parent and all its children are on the same offset from left. What canbe done
// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection. private void exgrid1_AddGroupItem(object sender,int Item) { exontrol.EXGRIDLib.Items var_Items = exgrid1.Items; int nGroupColumn = var_Items.get_GroupItem(Item); var_Items.set_ItemDivider(Item,-1); var_Items.set_FormatCell(Item,0,var_Items.get_FormatCell(Item,nGroupColumn)); var_Items.set_CellValue(Item,0,exgrid1.Columns[nGroupColumn].GroupByTotalField); var_Items.set_CellValueFormat(Item,0,var_Items.get_CellValueFormat(Item,nGroupColumn)); } //this.exgrid1.AddGroupItem += new exontrol.EXGRIDLib.exg2antt.AddGroupItemEventHandler(this.exgrid1_AddGroupItem); exgrid1.BeginUpdate(); exgrid1.ReadOnly = exontrol.EXGRIDLib.ReadOnlyEnum.exReadOnly; exgrid1.ColumnAutoResize = false; // Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project. ADODB.Recordset rs = new ADODB.Recordset(); rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",exontrol.ADODB.CursorTypeEnum.adOpenStatic,exontrol.ADODB.LockTypeEnum.adLockOptimistic,0); exgrid1.DataSource = (rs as ADODB.Recordset); exgrid1.SortBarVisible = true; exgrid1.SortBarCaption = "Drag a <b>column</b> header here to group by that column."; exgrid1.AllowGroupBy = true; exontrol.EXGRIDLib.Column var_Column = exgrid1.Columns[0]; var_Column.AllowGroupBy = false; var_Column.Width = 96; exgrid1.Columns[1].SortOrder = exontrol.EXGRIDLib.SortOrderEnum.SortAscending; exgrid1.LinesAtRoot = exontrol.EXGRIDLib.LinesAtRootEnum.exLinesAtRoot; exgrid1.EndUpdate(); |